作为我的一个模型类的成员函数,我有一个返回布尔值的is_visible(self, user)
方法。根据定义,它将请求用户(Django User
模型)作为输入。
我希望能够根据对此方法的响应来过滤查询集。如何将此函数用作查询集过滤器?
对于上下文,这是我的is_visible
实现:
def is_visible(self, user):
if self.status.status_internal == "open":
return True
if self.owner == user:
return true
participations = Participation.objects.filter(event__id=self.id, participant__id=user.id)
if len(participations) > 0:
return True
if self.status.status_internal == "invite":
return True
return False