【发布时间】:2017-09-28 15:01:33
【问题描述】:
我在 urls.py 中有以下内容:
url(r'frameworkslist/(?P<pk>\d+)$', DetailView.as_view(queryset=Category.objects.all().order_by("id"), template_name='home/subcategory.html'))
在我的 html 模板中:
{% extends "Layout.html" %}
{% block content %}
{{ subcategory.Name }}
{% for item in object_list %}
<h5> <a href="/search/{{ item.id }}">{{ item.Name }}</a> </h5>
{% endfor %}
<a href = "/frameworkslist/">Back to framework list</a>
{% endblock %}
我想知道为什么 object_list 是空的,但是当我将我的 url 更改为以下时,它起作用了。 (返回 ListView 模板而不是 DetailView):
url(r'frameworkslist/(?P<pk>\d+)$', ListView.as_view(queryset=Subcategory.objects.all().order_by("id"), template_name='home/subcategory.html'))
还要注意,将变量“model=Subcategory”传递给 DetailView 似乎会返回 Subcategory 表的第一条记录(或者应该是单个模型)并将其传递给模板。所以我的问题分为两部分,第二部分是:你如何将对象集合到 DetailView 模板?
【问题讨论】:
标签: python django listview detailsview django-generic-views