在每个页面 ( base.html
) 中,我想检查request.user
我的班级是否有管理员角色UserTypes
并显示管理员链接。目前我做这样的事情:
{% if user.profile.user_types.all %}
{% for user_type in user.profile.user_types.all %}
{% if user_type.name == "ad" %}
<li>
<a href="{% url admin:index %}" class="round button dark ic-settings image-left">Admin</a>
</li>
{% endif %}
{% endfor %}
{% endif %}
user.profile
只是从 DjangoUser
到我的UserProfile
.
但这似乎有点冗长和笨拙。有没有更简单的方法?也许我应该编写自己的自定义上下文处理器并传递一个变量之类的is_admin
东西,但我之前从未编写过自定义上下文处理器......