我想用ajax登录表单创建网页。这就是我所拥有的:
控制器:
def login_form():
loginForm = auth.login()
return loginForm
视图:
<div class="loginFormLayout">
{{=LOAD('default', 'login_form', ajax=True)}}
</div>
这是我的auth.settings:
auth.settings.remember_me_form = False
auth.settings.login_next = URL('main')
auth.settings.logout_next = URL('index')
现在,如果我登录,页面将重定向到http://127.0.0.1:8000/server/default/main
(应该如此)。如果我写错了电子邮件,则会显示错误消息。但是,如果我写了正确的电子邮件和错误的密码,页面将重定向到http://127.0.0.1:8000/server/default/login_form
。我想在提交错误密码后停止重定向。
我与
并列auth.settings.on_failed_authentication = lambda url: redirect(URL('index'))
auth.settings.on_failed_authorization = URL('index',args='on_failed_authorization')
没有帮助。
同样关闭用户脚本并不是一个好方法,因为它可以防止在正确登录后重定向。
如何在没有重定向和页面重新加载的情况下正确提供错误密码的错误消息?