Ven*_*tta 10 django django-authentication django-registration
我按照这个页面设置了一个django注册网站.它非常棒,注册和身份验证很好.
但是,它没有告诉我,在显示网页之前,如何检查用户是否已登录,该用户是谁?以及如何在登录后将用户定向到新页面?
谢谢!
msc*_*msc 13
在视图中,您可以使用if request.user.is_authenticated():和当前用户的变量request.user
在模板中,您可以使用{% if user.is_authenticated %}和当前用户的变量user
要在登录后重定向用户,可以在中设置LOGIN_REDIRECT_URL变量settings.py
在.py文件中
您可以在每个视图中使用它
if not request.user.is_authenticated():
#do something
Run Code Online (Sandbox Code Playgroud)
或者就在每个视图之前
@login_required
Run Code Online (Sandbox Code Playgroud)
请记住,这个需要导入from django.contrib.auth.decorators import login_required
,您可能还想写入LOGIN_URL = "/loginurl/"您的settings.py非登录用户重定向到特定的URL而不是默认的URL accounts/login)
在.html文件中
{% if not user.is_authenticated %}
Login is required
{% endif %}
Run Code Online (Sandbox Code Playgroud)
登录后重定向
你可以修改LOGIN_REDIRECT_URL的settings.py
或者redirect("/indexpage")在用户登录后.
最后一个需要导入from django.shortcuts import redirect
| 归档时间: |
|
| 查看次数: |
12882 次 |
| 最近记录: |