我在 Django 2.1.2 上工作,我想在课堂上装饰我的视图。我在路径中应用 login_required 装饰器
path('', login_required(CredentialsList.as_view()), name='credentials-list'),
当我向 CredentialList 发送请求时,它会正常响应,它不会将我重定向到登录屏幕。我是否从配置中遗漏了什么
LOGIN_URL='login/'
LOGIN_REDIRECT_URL = 'list/'
我在 Django 2.1.2 上工作,我想在课堂上装饰我的视图。我在路径中应用 login_required 装饰器
path('', login_required(CredentialsList.as_view()), name='credentials-list'),
当我向 CredentialList 发送请求时,它会正常响应,它不会将我重定向到登录屏幕。我是否从配置中遗漏了什么
LOGIN_URL='login/'
LOGIN_REDIRECT_URL = 'list/'
相反,您可以在视图中使用 LoginRequiredMixin 或装饰器。例如:
# views.py
from django.contrib.auth.mixins import LoginRequiredMixin
from django.contrib.auth.decorators import login_required
# For a class-based view
class CredentialsList(LoginRequiredMixin, TemplateView):
# For a function-based view
@login_required
def credentials_list(request):
并为您的网址删除装饰器:
path('', CredentialsList.as_view(), name='credentials-list'),
我在另一个 linux (ubuntu 16.04) 上运行这个项目,当然还有另一个环境,一切正常:|。我必须在家里检查出了什么问题,也许必须创建另一个virualenv。谢谢大家对我的帮助!!!