私は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})
そして、それは商用カテゴリだけでうまく機能します。このようなカテゴリごとに複数のビューを書きたい場合は、ハードコーディングのように思えます。必要なのは、すべてのカテゴリとそれに関連する album.subject を自動的に表示するビューまたはフィルタリング プロセスです。したがって、最終結果は次のようになります。
個人的
- アルバム 1
- アルバム 2
商業
- アルバム4
- アルバム5
どうやってやるの?