0
Djangoを初めて使用しました。私はMyModelの各オブジェクトのテンプレート(mytemplate.html)にMyModel(manytomany)のタグプロパティを取得する方法を理解しようとしています。注:タグ管理には4つのタグがあります。 MyModelのオブジェクトの一部には2つのタグがあり、一部には1があります。テンプレートに各オブジェクトの一意のタグをどのように取得するのですか?ここに私のファイルは、以下のとおりです。Django-モデルでManyToManyFieldを使用して動的テンプレートを作成する方法
models.py
class Tag(models.Model):
CATEGORY_CHOICES = (
('dataset', 'dataset'),
('brand', 'brand'),
)
tag = models.CharField(max_length=100)
category = models.CharField(max_length=100, choices=CATEGORY_CHOICES)
class MyModel(models.Model):
id = models.CharField(max_length=30, primary_key=True)
publish_date = models.DateField()
tags = models.ManyToManyField(Tag)
views.py
from .models import MyModel, Tag
def index(request):
tags = Tag.objects.all()
infos = MyModel.objects.all().order_by('publish_date').reverse()
return render(request, 'mytemplate.html', {'infos': infos, 'tags':tags})
mytemplate.html
今、これはわずか4つのp要素を作成します - 可能な4つの「タグ」すべてに1つ
{% for info in infos %}
<small>{{info.publish_date}}</small>
{% for tag in tags %}
<p>{{tag.tag}}</p>
{% endfor %}
{% endfor %}