尝试通过 DetailView 构建 url 路径,但在 html 页面中获取重复值

问题描述

我开始学习django。我想创建一个目录站点

我希望它是:主页 -> 州列表 -> 餐厅类型列表 -> 餐厅名称列表

我有一个“国家列表”作为通用的.ListView,它工作得很好。我也尝试将“餐厅类型列表”作为 ListView,但它不会在 html 中提取任何数据。将其更改为 DetailView 它会提取数据但具有重复条目。有没有办法将其限制为 views.py 或 restaurant_detail.html 中的唯一输出

当前的HTML代码为:

<p><b>Restaurant SECTION</b></p>
{% for name in states.restaurant_name_set.all %}
<p>{{name.restaurant_types}}</p>
{% endfor %}

我得到类似的信息:

美食 自助餐 自助餐 自助餐 食品卡车

我只想要一个,然后我可以链接到餐厅名称列表

解决方法

不要使用额外的输入参数,只需使用“ifchanged”Django 内置过滤器:https://docs.djangoproject.com/en/2.0/ref/templates/builtins/#ifchanged

{% for name in states.restaurant_name_set.all|dictsort:'restaurant_name' %}
    <p>{% ifchanged %}{{name.restaurant_types}}{% endifchanged %}</p>
{% endfor %}

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...