0

如何创建这样的东西:

如果用户在: http://127.0.0.1:8000/about/那么在我的 base.html 中我有:

You are here: <li><a href="/about/">Home</a></li>

等等。

有简单的方法吗?

4

1 回答 1

0

这可能会变得很棘手,具体取决于“面包屑”的含义。

  1. Django 的 URL 路由系统没有固有的层次结构,因为任何 URL 都可以映射到任何视图。
  2. 因此,您必须完全指定“层次结构”。
  3. …并由您在您的视图或上下文处理器中传递给模板。
  4. 您需要为 URL 分配一个 URL 和一个名称(所以您知道/about/是“Home”)。

有很多方法可以做到这一点,这完全取决于你想要它的灵活性、你的 URL 模式有多复杂、你是否想要支持嵌套等等。

通常,我只使用Django Breadcrumbs。这个项目处理所有奇怪的面包屑,有一个非常易于使用的 API,甚至可以处理奇怪的情况。

虽然完整的代码示例可能会有所帮助,但这是一个漫长而棘手的问题,因此您最好阅读 django-breadcrumbs 的文档,然后带着问题返回这里。

于 2013-03-14T11:24:58.037 回答