実現したいこと
Django初心者です。
記事に紐づいたテーマをテンプレートで表示させたいです。
多対多のモデルにおいて、関連モデルのフィールドをテンプレートで使う方法が分からず困っています。
models
1from django.db import models 2 3class Theme(models.Model): 4 theme = models.CharField(max_length=30) 5 6 def __str__(self): 7 return self.theme 8 9class Article(models.Model): 10 title= models.CharField(max_length=50) 11 description = models.TextField() 12 themes = models.ManyToManyField(Theme, blank=True) 13 14 def __str__(self): 15 return self.name
記事の一覧を作る際に、ListViewを継承しテーマでフィルタをかけることまでは出来ましたが、
テンプレートでArticleに紐づくthemeを表示させようとすると失敗してしまいます。
どのように、Viewsおよびテンプレートに記載するのが正しいでしょうか。
初歩中の初歩かと思いますが、
調べてもうまくいかず教えて頂けますと有難いです。
class Index(generic.ListView): template_name = 'article/index.html' model = Article def get_queryset(self): return Article.objects.filter(themes__theme='結婚')
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2020/06/14 08:16