![](/img/trans.png)
[英]How to use Google Users API with Google App Engine and Android
[英]Google App Engine: Users API acting oddly
我認為我使用的用戶API錯誤:
class BaseHandler(webapp.RequestHandler):
user = users.get_current_user()
def header(self, title):
if self.user:
render('Views/link.html', self, {'text': 'Log out', 'href': users.create_logout_url('/')})
else:
render('Views/link.html', self, {'text': 'Log in', 'href': users.create_login_url('/')})
link.html :
<p>
<a href="{{href}}">{{text}}</a>
</p>
有時它起作用,有時卻不起作用。 我將連續十次單擊“注銷”鏈接,然后重新加載頁面,它將重定向到'/'
頁面。 然后,神秘地,我將登出的其中一次。 基本上以相同的方式登錄失敗。 這里發生了什么?
解決 -此方法有效:
class BaseHandler(webapp.RequestHandler):
def __init__(self):
self.user = users.get_current_user()
def header(self, title):
if self.user:
render('Views/message.html', self, {'msg': "Welcome, %s" % self.user.nickname()})
render('Views/link.html', self, {'text': 'Log out', 'href': users.create_logout_url('/')})
else:
render('Views/link.html', self, {'text': 'Log in', 'href': users.create_login_url('/')})
看起來我可以通過在函數self.var_name
它們稱為self.var_name
來擁有實例變量,但是永遠不要在類級別上聲明它們。 奇。
您正在將users.get_current_user()
的結果存儲在名為user
的變量中,但隨后您if
檢查self.user
的值,該值不是同一變量。
使用相同的變量名,都應該沒問題!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.