【发布时间】:2016-06-06 17:48:34
【问题描述】:
我有一个相当愚蠢的问题。
我正在尝试一个应用程序,上面有两个表单:
输入邮政编码(提交按钮)
或
如果您已有用户 ID,请登录。 (提交按钮)
现在在我的代码中(使用web.py 框架的python)我有两个def POST(self),但是第一个表单和第二个登录表单调用哪个?
我很困惑。现在我的朋友告诉我 html 不能有两种不同的形式。
这是代码,但表单不完整 - 我只是想在开始获取更多数据并构建数据库架构之前让方法运行良好。
import web
from web import form
render = web.template.render('templates/')
urls = (
'/', 'index'
)
myform = form.Form(
form.Textbox("Zip Code",
form.regexp('^\d{5}$', 'Not a zip code'),
description='Enter a 5 digit zip code',
maxlength = '5'),
)
myloginform = form.Form(
form.Textbox("Username",
form.regexp('^[^<>\s\@]+(\@[^<>\s\@]+(\.[^<>\s\@]+)+)$', 'Invalid username'),
description='Enter your username'),
)
class index:
def __init__(self): ** i still dont know wtf this does..
pass
def GET(self):
form = myform()
myloginform1 = myloginform()
return render.index(form,myloginform1)
def POST(self):
form = myform()
if not form.validates():
return render.index(form)
else:
return "The zip code you are located is: %s" % (form['Zip Code'].value)
def POST(self):
myloginform1 = myloginform()
if not myloginform1.validates():
return render.index(myloginform1)
else:
return "Welcome %s" % (myloginform1['Username'].value)
class testfunc:
def GET(self):
return "Test function returning!"
if __name__ == "__main__":
app = web.application(urls, globals())
app.run()
index.html 在下方
$def with (form, myloginform1)
<html>
<head><title>8reps Welcome.. </title></head>
<body>
<h3>Hi</h3>
<p> Lets find some results in your area.. </p>
<form name="main" method="post">
$if not form.valid: <p class="error">Try again...</p>
$:form.render()
<input type="submit" /> </form>
<p> Already registered? Login as a user..</p>
<form name="login" method="post">
$if not myloginform1.valid: <p class="error">Try again..</p>
$:myloginform1.render()
<input type="submit" />Login</form>
</form>
</body>
</html>
谢谢!!
【问题讨论】: