如何在django中查询具有manytomany字段指向它们的对象
Posted
技术标签:
【中文标题】如何在django中查询具有manytomany字段指向它们的对象【英文标题】:How to query the object which has manytomany field point to them in django 【发布时间】:2013-06-08 00:02:53 【问题描述】:我有两个模型用户和公司
class Company(models.Model):
name = models.CharField max_length=50)
class User(models.Model):
name = models.CharField( max_length=40)
following = models.ManyToManyField(Company)
我想让所有有一些用户的公司都在关注他们。 像
Company.objects.filter(has_following = True)
我该怎么做?
【问题讨论】:
【参考方案1】:您可以在声明 M2M 关系时使用related_name
:
class User(models.Model):
name = models.CharField(max_length=40)
following = models.ManyToManyField(Company, related_name='followers')
然后,您可以使用以下方式查询它:
>>> Company.objects.exclude(followers=None)
【讨论】:
以上是关于如何在django中查询具有manytomany字段指向它们的对象的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Django 中一次将多个对象添加到 ManyToMany 关系?
Django - 按添加到 ManyToMany 字段的最后一个元素查询对象