作者NewSpec (新規格)
看板Python
標題[問題] 請問appengine如何redirect並攜帶資訊?
時間Mon Dec 10 00:07:43 2012
小弟現在正在用App Engine寫一個小網站
其中當然有輸入表單後 將資料送給伺服端的功能
例如 /login 對應 LoginHandler
class LoginHandler(webapp2.RequestHandler):
def get(self):
template = JINJA_ENV.get_template('login.html')
self.response.out.write(template.render())
login頁面的form在按下submit後會將資料丟給 /register (RegisterHandler)
class RegisterHandler(webapp2.RequestHandler):
def post(self):
if not self.request.POST['username']:
# 將未填入使用者的錯誤訊息放入某個地方
return self.redirect('/login')
''' ...other code... '''
我希望當RegisterHandler檢查到某些錯誤資料後
能帶著一些訊息並redirect回/login
但問題來了, 我試過self.request.POST, self.request.GET及self.request.registry
都沒有辦法將訊息帶回給LoginHandler
請問有人知道這個問題該怎麼解決的嗎@@?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 36.224.219.44
→ uranusjr:最簡單的方法直接在 redirect 的網址加上 query string 12/10 01:09
→ uranusjr:這些東西會變成 get 的 arguements 12/10 01:09
推 swpoker:registry?應該就是 request期間用的啦 12/10 11:31
推 swpoker:或是用session拉~from webapp2_extras import sessions 12/10 11:34
→ swpoker:只是這裡最好用registry 12/10 11:34
→ NewSpec:request.registry不行喔, 在redirect之後的request中是沒 12/10 14:41
→ NewSpec:有資料的 12/10 14:41
推 swpoker:看API裡面~說redirect可以把request帶過去阿 12/11 10:34
→ NewSpec:試過了 沒用Q__Q 12/11 23:04