我有 2 个模型:
class Category(models.Model):
title = models.CharField(max_length=250)
### other fields
class Album(models.Model):
category = models.ForeignKey(Category)
subject = models.CharField(max_length=200)
### other fields...
.
我刚刚写了一个按特定类别过滤专辑的视图,我也希望它们都在 home.html 模板中:
#views.py
def commercial(request):
commercial_subjects = Album.objects.filter(category__title__contains="commercial" )
return render(request, 'gallery/index.html', {'commercial_subjects': commercial_subjects})
它仅适用于商业类别。如果我想为每个类别编写多个视图,就像硬编码一样。我需要的是一个自动显示所有类别及其相关专辑主题的视图或过滤过程。所以最终的结果一定是这样的:
个人的
- 专辑 1
- 专辑 2
商业的
- 专辑 4
- 专辑5
我怎样才能做到这一点?