Python Django-如何在模型中使用ManyToManyField创建动态模板
我是Django的新手。我试图找出如何将MyModel(manytomany)的tags属性获取到MyModel中每个对象的模板(mytemplate.html)上。注意:标签管理中有4个可能的标签。MyModel中的一些对象有2个标记,一些对象有1个。如何在模板上获得每个对象的唯一标记选择?这是我的档案: 型号.pyPython Django-如何在模型中使用ManyToManyField创建动态模板,python,django,many-to-many,Python,Django,Many To Many,我是Django的新手。我试图找出如何将MyModel(manytomany)的tags属性获取到MyModel中每个对象的模板(mytemplate.html)上。注意:标签管理中有4个可能的标签。MyModel中的一些对象有2个标记,一些对象有1个。如何在模板上获得每个对象的唯一标记选择?这是我的档案: 型号.py class Tag(models.Model): CATEGORY_CHOICES = ( ('dataset', 'dataset'),
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)
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})
视图.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)
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个可能的“标记”
{% for info in infos %}
<small>{{info.publish_date}}</small>
{% for tag in tags %}
<p>{{tag.tag}}</p>
{% endfor %}
{% endfor %}
{%for infos%中的信息]
{{info.publish{u date}
{标记%中的标记的%s}
{{tag.tag}
{%endfor%}
{%endfor%}
尝试以下操作
{% for info in infos %}
<small>{{info.publish_date}}</small>
{% for tag in info.tags.all %}
<p>{{tag.tag}}</p>
{% endfor %}
{% endfor %}
{%for infos%中的信息]
{{info.publish{u date}
{info.tags.all%中标记的%s}
{{tag.tag}
{%endfor%}
{%endfor%}