我寫了以下幾個基於我發現的幾個不同的web.py示例,但我無法獲得登錄頁面發佈,任何想法爲什麼我的代碼是sooo foobar?Web.py窗體不張貼?
p.s此外,爲什麼我似乎必須將web.config.debug設置爲false,如果我想使用會話?
import web
import db
from web import form
login = form.Form(
form.Textbox('username'),
form.Password('password'),
form.Button('Login'),)
urls = (
'/', 'Index',
'/login', 'Login',
'/home', 'Home',)
web.config.debug = False
app = web.application(urls, globals())
session = web.session.Session(app, web.session.DiskStore('sessions'))
class Login:
def GET(self):
f = login()
return render.register(f)
def POST(self):
f = web.input()
check = db.db_query('select * from users where username=? and password=?', (i.username, i.password))
if check:
session.loggedin = True
session.username = i.username
raise web.seeother('/home')
else: return render.base("Those login details don't work.")
class Index:
def GET(self):
return 'index'
class Home:
def GET(self):
return 'home'
if __name__ == '__main__':
app.run()
「ps爲什麼我似乎必須將web.config.debug設置爲false,如果我想使用會話?」 - 因爲會話/ cookie頭必須在頁面內容之前發送,因此如果在發送會話/ cookie之前發送任何調試消息,它們將不起作用 – Andrea 2011-06-10 16:02:55
錯誤可能出現在「註冊」模板中。你可以分享嗎? – 2011-06-15 01:33:47