我有一个接触页面类似于控制器执行以下操作:的TurboGears 2 - 验证形式相同的URL
@expose('project.templates.contacts')
def contact(self, **kw):
return dict(form=contact_form)
一旦提交的形式使用以下的控制器方法验证:
@validate(form=contact_form, error_handler=contact)
@expose()
def processContact(self, **kw):
# Do some processing on the contact form
redirect('contact')
这是许多在线教程提倡的设置(如http://turbogears.org/2.0/docs/main/FormBasics.html)。
我的问题是当提交联系表单提交错误数据时公开的URL,@validate调用error_handler方法。
I.e.
- “的http://域名/接触” - 用户去接触网页,并在填写表单,然后点击提交
- “的http://域名/接触” - 如果有在表单中没有错误,用户被成功重定向到联系页面。
- “http:// domain/processContact” - 如果表单中存在错误,则会调用联系功能,但不会从公开的processContact'页面'重定向,因此url保持不变。
我正在寻找一种方法来防止用户不必看“的http://域名/ processContact”(正确的方法是什么?)。理想情况下,用户只能看到“http:// domain/contact”。
嗨,用户会看到“http:// domain/processContact”,因为它是表单动作。 – ttran