gae 错误:AttributeError:“NoneType”对象没有属性“user_is_member”

2024-02-26

class Thread(db.Model):
  members = db.StringListProperty()

  def user_is_member(self, user):
    return str(user) in self.members

and

thread = Thread.get(db.Key.from_path('Thread', int(id)))
is_member = thread.user_is_member(user)

但错误是:

Traceback (most recent call last):
  File "D:\Program Files\Google\google_appengine\google\appengine\ext\webapp\__init__.py", line 511, in __call__
    handler.get(*groups)
  File "D:\Program Files\Google\google_appengine\google\appengine\ext\webapp\util.py", line 62, in check_login
    handler_method(self, *args)
  File "D:\zjm_code\forum_blog_gae\main.py", line 222, in get
    is_member = thread.user_is_member(user)
AttributeError: 'NoneType' object has no attribute 'user_is_member'

why ?

thanks


您尝试通过键获取实体,但不存在具有该键的实体,因此 .get() 返回 None 。在尝试对其执行操作之前,您需要检查是否返回了有效的实体,如下所示:

thread = Thread.get(db.Key.from_path('Thread', int(id)))
if thread:
  is_member = thread.user_is_member(user)
else:
  is_member = False

或者,等效地:

thread = Thread.get(db.Key.from_path('Thread', int(id)))
is_member = thread.user_is_member(user) if thread else False
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

gae 错误:AttributeError:“NoneType”对象没有属性“user_is_member” 的相关文章

随机推荐