django decorator检查用户是否登录,否则重定向
由于我在做上述工作,在我的大多数观点中,我认为应该有更好的东西,而不是把它放在我所有的观点中 现在我发现了一些关于装饰师的东西,似乎有点像我想要的:django decorator检查用户是否登录,否则重定向,django,redirect,login,Django,Redirect,Login,由于我在做上述工作,在我的大多数观点中,我认为应该有更好的东西,而不是把它放在我所有的观点中 现在我发现了一些关于装饰师的东西,似乎有点像我想要的: if not request.user.is_authenticated(): return HttpResponseRedirect(reverse('login_user')) 现在我想知道这是否真的是用decorator完成的,如果是这样,我如何翻译它来检查用户是否登录并重定向到其他位置?您可以使用内置decorator: from
if not request.user.is_authenticated():
return HttpResponseRedirect(reverse('login_user'))
现在我想知道这是否真的是用decorator完成的,如果是这样,我如何翻译它来检查用户是否登录并重定向到其他位置?您可以使用内置decorator:
from django.views.decorators.http import require_http_methods
@require_http_methods(["GET", "POST"])
def my_view(request):
请阅读是否有关于所有内置装饰器的概述?只有当我将登录url设置为“主页”login_url=''时,我才找到此页面。当我实际尝试访问使用@login_required错误的页面时,我会遇到一个错误:“使用参数“()”和关键字参数“{}”的“^$”的反向。如何解决此问题?在登录url中,您应该传递url(或函数名或命名url模式)指向您的登录页面。
from django.contrib.auth.decorators import login_required
@login_required
def edit_user_profile(request):
//some code