gpt4 book ai didi

python - 错误 :AttributeError: 'NoneType' object has no attribute 'user_is_member'

转载 作者:太空宇宙 更新时间:2023-11-03 13:53:22 26 4
gpt4 key购买 nike

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

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

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'

为什么?

谢谢

最佳答案

您正在尝试通过键获取实体,但不存在具有该键的实体,因此 .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

关于python - 错误 :AttributeError: 'NoneType' object has no attribute 'user_is_member' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2787319/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com