【发布时间】:2016-10-10 22:38:45
【问题描述】:
我需要在我的 django 管理员中创建一个应该出现在所有页面中的侧边菜单。理想情况下,我的模板应该是包含此代码并解析 app_list 参数的通用 navigation.html 文件(与用于填充仪表板的 index.html 模板相同):
{% block side_menu %}
{% if app_list %}
{% for app in app_list %}
<ul class="sidebar-menu app-{{ app.app_label }} module">
<li class="treeview">
<a href="#">
<i class="fa fa-dashboard"></i> <span>{{ app.name | truncatechars:"25" }}</span>
<span class="pull-right-container">
<i class="fa fa-angle-left pull-right"></i>
</span>
</a>
{% for model in app.models %}
<ul class="treeview-menu">
{% if model.admin_url %}
<li><a href="{{ model.admin_url }}"><strong>{{ model.name }}</strong></a></li>
{% else %}
<li>{{ model.name }}</li>
{% endif %}
{% if model.add_url %}
<li><a href="{{ model.add_url }}"><i class="fa fa-plus"></i> {% trans 'Add' %}</a></li>
{% else %}
<td> </td>
{% endif %}
{% if model.admin_url %}
<li><a href="{{ model.admin_url }}"><i class="fa fa-pencil-square-o"></i> {% trans 'Change' %}</a></li>
{% else %}
<td> </td>
{% endif %}
</ul>
{% endfor %}
</li>
</ul>
{% endfor %}
{% else %}
<p>{% trans "You don't have permission to edit anything." %}</p>
{% endif %}
{% endblock side_menu %}
我的问题是:
1) 如何在所有页面中包含新的 navigations.html 模板?
2) 如何将 app_list 字典传递给此模板?
提前感谢
【问题讨论】: