Django:多个菜单
我的基于 django 的网站将有 3 个独立的菜单。第一项是:联系、关于、披露。第二个将包含:条款和条件、隐私政策、版权。主菜单的项目有:Home、link1、link2、link2……前两个菜单的项目是固定的,最后一个菜单的项目可能会改变。由于我将在模板中使用 forloop,因此创建这些菜单的最佳方法是什么。网页只有标题和内容。
My django based website will have 3 seperate menus. The items of first one are: contact, about, disclosures. The second one will have: terms and condtions, privacy policy, copyright. And items of main menu are: Home, link1, link2, link2.... The first two menus will have fixed items, and the items of last one may change. As I will be using forloop in the template, what is the best approach for creating those menus. The webpages will have just a title and content.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我喜欢使用 包含模板标签动态菜单。
在
my-app/templatetags/myappmenu.py
中,我有类似的内容:然后,在模板中,您可以循环遍历项目并以您想要的格式生成菜单(
;
、等)。
如果需要使菜单中的项目有条件地显示,可以通过检查模板标签中的权限将其添加到列表中;只需将请求或用户对象作为参数传递给模板标记函数。
I like to use inclusion template tags for dynamic menus.
In
my-app/templatetags/myappmenu.py
, I have something like:Then, in your template you can loop over the items and produce the menu in the format you desire (
<p>
,<ul>
, etc.).If you need to make items in the menu appear conditionally, you can add them to the list by checking permissions in the template tag; just pass the request or user object as argument to the template tag function.
您可以保持DRY,只使用django-menuware< /强>。它还支持嵌套菜单。
安装:
设置:
使用:
至少,您需要查看其 Github README 页面,然后再推出您自己的页面。
You can stay DRY and just use django-menuware. It supports nested menus as well.
Install:
Settings:
Usage:
Minimally, you'd want to look at its Github README page before rolling your own.