【发布时间】:2015-02-01 14:08:11
【问题描述】:
在我的 Django 站点的索引页面上,我生成了一个 url 列表,允许用户导航到详细信息页面。出现详细信息页面后,导航将不再可见。
我想要实现的是导航列表出现在详细信息页面(以及添加到我网站的每个页面)上。
我尝试过的如下:(每个视图中的第一行都是重复的)
def index(request):
**collection_urls = Collection.objects.order_by('the_year')**
return render(request, 'index.html', {'collection_url': collection_urls})
def originalexample(request, collection_id):
**collection_urls = CarCollection.objects.order_by('the_year')**
car = get_object_or_404(CarCollection, pk=collection_id)
return render(request, 'detail.html', {'originalexample': car, 'collection_url': collection_urls})
虽然这可行,但我知道这是不对的,因为我运行了两次查询。我的下一个想法是执行一次查询,然后在呈现页面时将其传递给页面。如果是这样,我会怎么做?还是有更pythonic的方法?
如果需要,我使用的是 Django 1.6.2,并且 url 列表不会经常更改(它们只能通过 Django 管理屏幕更改)
提前致谢。
【问题讨论】:
标签: django django-views django-urls