web.py 呈现错误页面,路径不正确
web.py rendering wrong page, path not correct
我正在与 web.py 合作开发一个包含用户身份验证组件的项目。该项目有一个 /demo
目录和一个 /register
目录。
问题在于,由于某种原因,单击旨在前往 /register
目录的按钮会转到 /demo
。有趣的是,如果我在 URL 的末尾键入 /register
,/register
会正确显示。 URL 在这种情况下不同,缺少来自单击按钮的 ?register=Register
部分。
我点击注册按钮出现的具体错误是这样的:
type 'exceptions.TypeError'> at /demo
__template__() takes exactly 1 argument (0 given)
它指向问题区域的代码是这样的:
class demo:
def GET(self):
render = create_render(session.get('privilege', 0))
return '%s' % render.demo() # Specifically this line generates the error.
我不认为有任何奇怪的失败,因为在代码中有两个 classes 在 register
class 和 demo
之间实现class。它们实际上是按照它们在 urls
列表中显示的顺序实现的,reset
和 profile
介于两者之间。
我认为我的 urls
列表没有任何问题:
urls = (
'/', 'index',
'/register', 'register',
'/reset', 'reset',
'/profile', 'profile',
'/demo', 'demo',
'/entropy', 'entropy',
)
这也是按钮的 HTML 代码:
<form action="demo" method="GET">
<input type="submit" name="demo" value="Demo"/>
<form/>
<form action="register" method="GET">
<input type="submit" name="register" value="Register"/>
</form>
其他可能相关的代码位:
register.GET()
:
class register:
def GET(self):
reg_form = forms.registration_form()
render = create_render(session.get('privilege'))
return render.register()
create_privilege(privilege)
:(解释 here,在 #4)
def create_render(privilege):
if logged():
render = web.template.render('templates/logged', base='base')
else:
render = web.template.render('templates/', base="base")
return render
所以,我想,最后一个问题是:为什么按钮呈现错误的页面?如果需要,我可以 post 更多代码!
谢谢!
我修好了! HTML 按钮之一出现问题,form
标签未正确关闭。多么愚蠢的错误。
我正在与 web.py 合作开发一个包含用户身份验证组件的项目。该项目有一个 /demo
目录和一个 /register
目录。
问题在于,由于某种原因,单击旨在前往 /register
目录的按钮会转到 /demo
。有趣的是,如果我在 URL 的末尾键入 /register
,/register
会正确显示。 URL 在这种情况下不同,缺少来自单击按钮的 ?register=Register
部分。
我点击注册按钮出现的具体错误是这样的:
type 'exceptions.TypeError'> at /demo
__template__() takes exactly 1 argument (0 given)
它指向问题区域的代码是这样的:
class demo:
def GET(self):
render = create_render(session.get('privilege', 0))
return '%s' % render.demo() # Specifically this line generates the error.
我不认为有任何奇怪的失败,因为在代码中有两个 classes 在 register
class 和 demo
之间实现class。它们实际上是按照它们在 urls
列表中显示的顺序实现的,reset
和 profile
介于两者之间。
我认为我的 urls
列表没有任何问题:
urls = (
'/', 'index',
'/register', 'register',
'/reset', 'reset',
'/profile', 'profile',
'/demo', 'demo',
'/entropy', 'entropy',
)
这也是按钮的 HTML 代码:
<form action="demo" method="GET">
<input type="submit" name="demo" value="Demo"/>
<form/>
<form action="register" method="GET">
<input type="submit" name="register" value="Register"/>
</form>
其他可能相关的代码位:
register.GET()
:
class register:
def GET(self):
reg_form = forms.registration_form()
render = create_render(session.get('privilege'))
return render.register()
create_privilege(privilege)
:(解释 here,在 #4)
def create_render(privilege):
if logged():
render = web.template.render('templates/logged', base='base')
else:
render = web.template.render('templates/', base="base")
return render
所以,我想,最后一个问题是:为什么按钮呈现错误的页面?如果需要,我可以 post 更多代码!
谢谢!
我修好了! HTML 按钮之一出现问题,form
标签未正确关闭。多么愚蠢的错误。