【问题标题】:Existence of an object in many-to-many relation对象存在多对多关系
【发布时间】:2017-01-22 15:59:20
【问题描述】:

Python Django 代码:

class UserGroup(models.Model):
    users = models.ManyToManyField(User)

    def __contains__(user):
        pass # What should be here?

(User这里是另一个模型。)

如何有效地检查用户是否“属于”给定的用户组?

【问题讨论】:

    标签: django django-models model many-to-many


    【解决方案1】:

    你可以通过m2m manager查看:

    def __contains__(self, user):
        return user in self.users.all() # return boolean
    

    现在只需检查您的实例:

    user = User.objects.get(pk=some_pk) 
    group = UserGroup.objects.get(pk=some_pk)
    # or use another queries to fetch instanses
    if user in group:
        # do your logic
    

    【讨论】:

      猜你喜欢
      • 2018-11-16
      • 2012-01-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-12-17
      • 2015-03-16
      相关资源
      最近更新 更多