如何将管理页面项添加到导航栏(对于超级用户)?

时间:2017-06-19 20:18:27

标签: django django-forms django-views

有人可以告诉我如何实现导航栏,其中包含导致管理页面的项目吗? 它应该是这样的

                                                 Home | Faculty | Student | Admin 

在以下代码中,它适用于栏中的所有项目,但“admin”一项除外:

<ul class="nav navbar-nav navbar-right">
    <li><a href="{% url 'home' %}">Home</a></li>
    <li><a href="{% url 'faculty' %}">Faculty</a></li>
    <li><a href="{% url 'student' %}">Student</a></li>
    <li><a href="{% url 'admin' %}">Admin</a></li>
</ul>

在urls文件中,admin描述如下:

urlpatterns = [
url(r'^admin/', admin.site.urls, name='admin'), ...]

如果有人知道如何让'admin'项目仅对超级用户可见,我也很感激。非常感谢你!

1 个答案:

答案 0 :(得分:1)

试试这个

<ul class="nav navbar-nav navbar-right">
    <li><a href="{% url 'home' %}">Home</a></li>
    <li><a href="{% url 'faculty' %}">Faculty</a></li>
    <li><a href="{% url 'student' %}">Student</a></li>

        {% if request.user.is_superuser %}
    <li><a href="{% url 'admin' %}">Admin</a></li>
    {% endif %}

</ul>

不要忘记在网址管理员的视图中检查权限。