0
可以说,我的models.py看起来是这样的:如何获取可以在Django中迭代的ManyToManyField相关查询集?
class Tag(models.Model):
name = models.CharField(max_length=50)
class Review(models.Model):
text = models.TextField()
tags = models.ManyToManyField(Tag, related_name='review_tags', blank=True)
在我views.py我得到一个查询集是这样的:
def index(request):
reviews = Review.objects.all()
return render(request, 'myapp/index.html', {'reviews' : reviews})
在
的index.html
现在,我正在做这样的事情:
<div>
{% for review in reviews %}
<p>{{review.text}}</p>
{% for tag in review.tags %}
{{tag.name}}
{% endfor %}
{% endfor %}
</div>
显然,这是行不通的。但是,它会让您了解我正在尝试执行的操作,即获取特定审阅的标签并仅显示它们。我如何使用当前的设置执行此操作?
谢谢。
这并不是出于某种原因进行迭代。我尝试了{%for tag in review.review_tags.all%} {{tag.name}} {%endfor%},但没有显示任何内容。 –
但是,{%for review.tags.all%中的标记}确实有效。谢谢。 –
@TahmidKhanNafee谢谢你,我重新回答了答案,所以现在它有正确的信息。 –