Python 使用Django'验证整个用户站点;s认证系统
如何根据用户是否登录显示内容(在每个页面上)?我在我的Python 使用Django'验证整个用户站点;s认证系统,python,django,authentication,Python,Django,Authentication,如何根据用户是否登录显示内容(在每个页面上)?我在我的base.html中定义了一个侧栏区域,该区域要么填充登录/注册表单(如果用户未登录),要么填充一个仪表板(如果用户已登录) 我如何使我的网站上的每个网页都具有通用性?我是否必须在每次调用新视图时手动检查用户,并将用户变量传递给我的render\u to\u response()?必须有一个更简单的方法。如果我理解正确,我认为没有一个系统范围的解决方案。您必须根据用户是否经过身份验证来验证每个页面 在模板中添加以下代码,以查看用户是否有效且经
base.html
中定义了一个侧栏区域,该区域要么填充登录/注册表单(如果用户未登录),要么填充一个仪表板(如果用户已登录)
我如何使我的网站上的每个网页都具有通用性?我是否必须在每次调用新视图时手动检查用户,并将
用户
变量传递给我的render\u to\u response()
?必须有一个更简单的方法。如果我理解正确,我认为没有一个系统范围的解决方案。您必须根据用户是否经过身份验证来验证每个页面
在模板中添加以下代码,以查看用户是否有效且经过身份验证。您必须为每个具有用户级内容的模板执行此操作
{% if user.is_authenticated %}
... html stuff ...
{% endif %}
另一个想法可能是使用装饰
@login\u required
。但是,您仍然需要将其添加到具有用户级内容的每个视图中。如果我理解正确,我认为没有系统范围的解决方案。您必须根据用户是否经过身份验证来验证每个页面
{% if user.is_authenticated %}
... html stuff ...
{% endif %}
在模板中添加以下代码,以查看用户是否有效且经过身份验证。您必须为每个具有用户级内容的模板执行此操作
{% if user.is_authenticated %}
... html stuff ...
{% endif %}
另一个想法可能是使用装饰
@login\u required
。但是,您仍然需要将其添加到具有用户级内容的每个视图中。用户
自动准备好了请求上下文
,如果您在模板
中有'django.contrib.auth.context\u processors.auth'
,默认情况下,它是打开的。用户
会自动为请求上下文
做好准备,如果您在模板
上下文处理器中有'django.contrib.auth.context\u processors.auth'
,默认情况下它是打开的。但是变量用户
会自动创建和填充吗?在进入视图之前,我是否需要任何类型的代码来创建user
变量?是的。您已将django.contrib.auth
和django.contrib.contenttypes
添加到已安装的应用程序中
对吗?是的,我刚刚让它起作用。由于某种原因,服务器需要重新启动。ThanksBut变量user
是否自动创建和填充?在进入视图之前,我是否需要任何类型的代码来创建user
变量?是的。您已将django.contrib.auth
和django.contrib.contenttypes
添加到已安装的应用程序中
对吗?是的,我刚刚让它起作用。由于某种原因,服务器需要重新启动。谢谢
{% if user.is_authenticated %}
... html stuff ...
{% endif %}