我正在使用 Django 1.5.1 构建一个站点。我定义了专辑和类别模型:
###models.py
class Category(models.Model):
title = models.CharField(max_length=200, unique=True)
class Album(models.Model):
category = models.ForeignKey(Category, related_name='albums')
我已经生成了一个菜单,可以使用此视图和模板自动列出类别及其相关专辑:
###views.py
def index(request):
categories = Category.objects.all()[:5]
context = {'categories': categories}
return render(request, 'gallery/index.html', context)
def detail(request, album_id):
album = get_object_or_404(Album, pk=album_id)
return render(request, 'gallery/detail.html', {'album': album})
###index.html
{% for category in categories %}
{% with category.albums.all as albums %}
{{ category.title }}
{% if albums %}
{% for album in albums %}
<a href="/gallery/{{ album.id }}/">{{ album.title }}</a><br>
{% endfor %}
{% endif %}
{% endwith %}
{% endfor %}
<a href="blah">Biography</a>
我还可以将每张专辑显示为画廊向 detail.html 指示的视图。我想在每个画廊旁边显示菜单列表,所以我 {% include "gallery/index.html" %}
在 detail.html 的开头使用了标签。但是当 detail.html 加载时菜单列表没有显示,我只看到传记固定链接。
这是我的问题:我应该如何导入 index.html 中生成的菜单列表 in detail.html 呢?