我正在尝试将UserID存储在Google App Engine(Python)中的会话变量中。
会话变量功能正常。事实上,我甚至可以将密钥存储在会话中。这有效:
self.session['Xuser'] = user.key.id()
这不起作用:
self.session['Xuser'] = users.get_current_user()
我甚至尝试通过先将UserID放入另一个变量来欺骗系统。这也行不通:
tempcode = users.get_current_user()
self.session['Xuser'] = tempcode
当我尝试将UserID放入会话变量时,问题仅在于第二行。任何人都可以告诉我为什么以及我需要做什么才能将UserID存储在会话变量中,以便我可以比较它
我需要这样做,因为我有一个UserSupplement类型,我不希望用户能够为同一个UserID为这种类型添加多个条目。
感谢。
答案 0 :(得分:1)
您要在会话中存储的所有对象都必须是可序列化的。 User
显然不是。
答案 1 :(得分:1)
尝试
self.session['Xuser'] = users.get_current_user().user_id()