有人可以告诉我如何实现导航栏,其中包含导致管理页面的项目吗? 它应该是这样的
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'项目仅对超级用户可见,我也很感激。非常感谢你!
答案 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>
不要忘记在网址管理员的视图中检查权限。