python - 使用 ndb.CompulatedProperty 进行查询

标签 python app-engine-ndb

我的计算机属性定义如下:

class User(app.Model)
  DEFAULT_GPLUS_IMG_URL == "http://someimage.com/image/image.png"

  has_avatar = ndb.ComputedProperty(
    lambda self: True if self.avatar == DEFAULT_GPLUS_IMG_URL else False)

  @property
  def avatar(self):
    return self.gplus_data.get('image')

我尝试在交互式控制台中像这样查询:

from google.appengine.ext import ndb
from app.lib.users import User

print User.query(User.has_avatar==True).fetch()

这将返回一个[]

但是当我像这样循环 User.query() 时:

for i in User.query():
  print i.has_avatar

我得到[True, False]

我做错了什么?

最佳答案

正如 Guido 在问题评论中指出的那样,该问题与 dev_appserver 缓存有关。第二天我就得到了正确的结果。

关于python - 使用 ndb.CompulatedProperty 进行查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14807026/

相关文章:

python - 如何排列元组列表,以便删除与其他元组相比具有最高值的元组并返回最大值

python - 网络爬虫文本云

python - 为什么我的应用引擎查询找不到我的实例?

google-app-engine - 谷歌应用引擎中的ndb.OR操作

google-app-engine - 使用Google App Engine的NDB作为消息队列?

python - 在 Pandas 中使用多处理读取 csv 文件的最简单方法

java - 适应 map 缩减框架有哪些挑战性问题?

java - 我该如何用java编写这个方法?

python - 无法使用 NDB get_by_id 获取命名空间中的实体

python - 异步延迟谷歌应用引擎中的多个任务