我无法确定如何针对以下情况适当地过滤查询集。
我有一个有很多参与者的活动。这两个模型都是从国外数据源导入的,因此我想保留其数据的永久副本:
class Event(models.Model):
address = etc...
class Participant(models.Model):
event = models.ForeignKey('Event')
user_profile = models.ForeignKey('people.UserProfile', blank=True, null=True)
name = etc...
当外国数据源收到新事件时,它会向我发送一份副本,我将其填入这些模型中。导入脚本使用Participant的名称字段在现有的人员列表中尝试查找它们,如果是,则建立外键。
我手头有当前登录的UserProfile,还有Event.objects.all。我想通过当前登录的用户过滤事件。 .filter()的参数应该是什么?
答案 0 :(得分:1)
首先,您有一个名为auth.User
的{{1}}的ForeignKey。这很令人困惑。
其次,如果您想要所有与当前用户无关的事件,您需要:
user_profile
答案 1 :(得分:0)
似乎它没有复数。
Event.objects.filter(
的参与者强> __user_profile=UserProfile.objects.get(user=get_current_user()))