“Django”;列表“;及;“细节”;具有重复字段的行的视图

“Django”;列表“;及;“细节”;具有重复字段的行的视图,django,django-templates,django-views,Django,Django Templates,Django Views,重复字段行!重复字段行 因此,我有一个模型应用程序,其中有一个字段school\u name,它可以在其他字段中获取重复的值。 我希望实现的是:当我单击“列表”视图中的一行(或类似的内容)时,所有重复的学校名称值及其各自的计数的“列表””视图,以及其中每个重复字段的“详细信息””视图,我能够查看包含此重复字段的所有行,以及该特定条目的其余字段 我的意思是: 列出行。 当我点击第1行(DeDimKimthi Technology Technology)时,或者单击一个细节按钮或类似于行1的某种东

重复字段行!重复字段行

因此,我有一个模型
应用程序
,其中有一个字段
school\u name
,它可以在其他字段中获取重复的值。 我希望实现的是:当我单击“列表”视图中的一行(或类似的内容)时,所有重复的
学校名称
值及其各自的计数的“列表””视图,以及其中每个重复字段的“详细信息””视图,我能够查看包含此重复字段的所有行,以及该特定条目的其余字段

我的意思是:

列出行。

当我点击第1行(DeDimKimthi Technology Technology)时,或者单击一个细节按钮或类似于行1的某种东西,我希望得到这个:

到目前为止,我有两个问题:

duplicates = Application.objects.values('school_name').annotate(name_count=Count('school_name')).filter(name_count__gt=0)
上面的查询返回重复的行及其计数(如图1所示),而下面的查询

records = Application.objects.filter(school_name__in=[item['school_name'] for item in duplicates])
返回行的其他字段(如图2所示),只返回数据库中的所有行

我期望的是,当我单击“列表”上的一行时,我会看到一个“详细”视图,其中的行在
school\u name
字段中具有重复值


需要注意的是:我在我的
视图上执行此操作。py

我终于找到了解决我自己问题的方法:-) 所以我所做的是在我的视图中创建一个函数,它接受一个额外的参数,然后将该参数传递给URL和模板,如下所示

views.py

def school_detail(request, school_name):
    filtered_records = Application.objects.filter(school_name=school_name)
    context = {
        'repeated_names' : filtered_records,
        'duplicates' : duplicates,
        'title' : 'Disbursement Details',
    }

    return render(request, 'calculations/detail.html', context)
然后在myurl.py中

path('list/<str:school_name>/', default_views.school_detail, name='dup_detail')
path('list/',default_views.school_detail,name='dup_detail'))
最后在我的模板中:

  {% for application in duplicates %}
             <tr class="clickabe-row" data-target="{% url 'dup_detail' application.school_name %}">
                <td>{{ forloop.counter}}</td>
                <td>{{ application.school_name}}</td>
                <td>{{ application.name_count}}</td>


             </tr>
                {% endfor %}
{%用于重复的应用程序%}
{{forloop.counter}
{{申请.学校名称}
{{application.name_count}
{%endfor%}

很有魅力。

我不确定我是否真的理解这个问题。为什么在第二个查询中循环所有项?为什么不
Application.objects.filter(school\u name=selected\u school\u name)
?因为我需要学校名称,在您的案例中
selected\u school\u name
是动态的,因为学校名称将是重复列表@DanielRosemanSo中的学校名称,我需要一个函数,将school_名称作为附加参数,以便在重复列表中指示可单击行的URL时,将school_名称作为附加参数传递