检查项目是否包含在ManyToManyField(django)中

时间:2013-06-14 18:05:21

标签: python django django-models django-templates

所以我在Item1和Item2之间有一个ManyToManyField关系。在网页上,我想根据两个项是否连接显示两条消息之一。我只是不确定如何使用{%if%}模板标记查询我的确切项目。

我正在寻找的是

{% if Item1 is connected to Item2 %} Display Message1
{% else %} Display Message2 {% endif %}

有关如何完成此操作的任何提示?

class Profile(models.Model):
    user = models.OneToOneField(User)
    name = models.CharField(max_length=50)
    eventList = models.ManyToManyField(Event, blank="TRUE", null="TRUE", related_name='event_set+')

    def __unicode__(self):
        return self.name

1 个答案:

答案 0 :(得分:4)

我仍然不清楚如果要连接到其他对象,您希望看到哪个对象,但如果您想知道某个用户是否处于特定事件中,您可以这样做:

{% if event in user.eventList.all %} 
Display Message1
{% else %} 
Display Message2 
{% endif %}

您可以在现代django版本的in条件中使用运算符if

希望这有帮助!