Django 在模板中获取 ManyToMany 变量



我必须链接到与ManyToMany关系相关的模型:

class Event(models.Model):
user = models.ForeignKey(User, blank=True, null=True, on_delete=models.CASCADE)
title = models.CharField(max_length=512)
class Task(models.Model):
event = models.ManyToManyField(Event, blank=True, related_name='tasks')
description = models.CharField(max_length=1000, blank=True)

在 view.py 中,我通过以下方式收集所有用户事件:

events = Event.objects.filter(user=request.user)

现在在模板中,我想使用事件任务循环显示每个事件。

{% for event in events %}
{{event.title}}
{{event.task.description}}  ???
{% endfor %}

如何获得这项工作?

相关问题: link_1, link_2

尝试如下:

{% for event in events %}
{{event.title}}
{% for task in event.tasks.all %}
{{ task.description }}
{% endfor %}
{% endfor %}

您可以使用.all.请尝试以下操作:

{% for event in events %}
{{event.title}}
{% for task in event.event.all %}{{ task.description }}{% endfor %}
{% endfor %}

最新更新