相同的代码,在生产中在开发过程中不起作用。
模型:
class Comput(ndb.Model):
@staticmethod
def membership(user):
q = ndb.gql("SELECT * FROM Members WHERE member = :1", user)
result = q.fetch()
return [m.comput.get() for m in result]
#return [m.comput.get() for m in q] #same issue (dev yes, prod no)
class Members(ndb.Model):
comput = ndb.KeyProperty(kind=Comput)
member = ndb.UserProperty()
处理程序:
comput_list = Comput.membership(users.get_current_user())
模板:
{% for comput in comput_list %}
<tr onclick="location.href='/comput?id={$ comput.key.id() $}'">
追踪(仅限于生产中):
UndefinedError: 'None' has no attribute 'key'
即使comput_list
有实体,也会出现这种情况。
更新:没有会员的自动生成索引,我尝试手动添加但没有任何更改
答案 0 :(得分:1)
看起来您的Members
个对象的comput
属性为None。我会使用生产数据查看器(或添加日志语句)来查找它是哪个成员。