![](/img/trans.png)
[英]TemplateSyntaxError with django.contrib.auth.views.login
[英]Overriding and customizing “django.contrib.auth.views.login”
我正在尝试添加一个“让我登录”复选框到Django的默认登录视图。
这是我正在做的事情:
urls.py
url(r'^login/$',
myuser_login,
{'template_name': 'app_registration/login.html', 'authentication_form': MyAuthenticationForm},
name='auth_login',
),
views.py
from django.contrib.auth.views import login
def myuser_login(request, *args, **kwargs):
if request.method == 'POST':
if not request.POST.get('remember', None):
request.session.set_expiry(0)
login(request, *args, **kwargs)
所以基本上,我正在尝试将更多信息添加到我自己的视图中,只需调用Django的默认登录功能即可。 当我这样做时,我收到此错误:
ValueError at /accounts/login/
The view app_registration.views.myuser_login didn't return an HttpResponse object.
我检查了Django源代码,默认的contrib.auth.views.login函数显然返回了一个HttpResponse。
我该怎么办 :(((?
谢谢!!
所有django视图都必须返回HttpResponse
。 你的观点没有返回任何东西。
你应该这样回来
def myuser_login(request, *args, **kwargs):
if request.method == 'POST':
if not request.POST.get('remember', None):
request.session.set_expiry(0)
return login(request, *args, **kwargs)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.