1

基本上,我有两个模型,Profile 和 Event。配置文件有一个到事件表的ownedEvent M2M。该模型如下所示:

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+')
    ownedEvent = models.ManyToManyField(Event, blank="TRUE", null="TRUE", related_name='owned_set')

在网页上,我想根据事件是否有所有者来显示两件事之一。查看页面的用户可能不一定是所有者,所以我只需要检查是否有人拥有该事件。我将如何在我的模板中检查这个?

4

2 回答 2

4

如果我理解你的问题,你想知道,给定一个,在M2M 表中Event是否有任何Profiles关联。ownedEvent如果这是正确的,您可以在视图代码中执行以下操作:

is_owned = some_event.owned_set.exists()

然后传递is_owned给您的模板进行条件处理。

于 2013-07-23T22:33:16.200 回答
0

我对此不是 100% 确定,但我认为你可以做类似的事情......

if profiles=Profile.objects.filter(ownedEvent=YOUREVENT):
    #What you want if it is owned
else:
    #What you want if it isn't owned
于 2013-07-23T21:32:21.793 回答