0

如何根据用户是否登录来横向显示内容(在每个页面上)?我在base.html其中定义了一个侧边栏区域,其中填充了登录/注册表单(如果用户未登录)或仪表板(如果用户已登录)。

我怎样才能使我网站上的每个网页都通用?每次调用新视图时是否必须手动检查用户并将user变量传递给我的render_to_response()?必须有一个更简单的方法。

4

1 回答 1

3

如果我理解正确,我认为没有系统范围的解决方案。您必须根据用户是否经过身份验证来验证每个页面。

在模板中添加以下代码以查看用户是否有效且经过身份验证。您必须为每个具有用户级内容的模板执行此操作。

{% if user.is_authenticated %}
  ... html stuff ...
{% endif %}

另一个想法可能是使用装饰@login_required。但是,您仍然需要将其添加到具有用户级别内容的每个视图中。

于 2012-04-26T08:08:39.930 回答