过滤外键值django

时间:2016-03-24 14:07:00

标签: python django django-models foreign-keys foreign-key-relationship

我正在努力为我的项目获得正确的查询。这是我的模型的一个例子:

from django.db import models

class Product_Category(models.Model):
    name = models.CharField(max_length=30, unique=True)
    handle = models.SlugField(max_length=30, unique=True, null=True, blank=True)
    collection = models.CharField(max_length=30, null=True)
    def __unicode__(self):
        return self.name

class Product(models.Model):
    product_id = models.SlugField(unique=True)
    name = models.CharField(max_length=100)
    collections = models.ManyToManyField('Collection')
    category = models.ForeignKey(Product_Category, on_delete=models.SET_NULL, blank=True, null=True)
    def __unicode__(self):
        return self.product_id

我正在尝试根据Product_Category.collection

的值获取所有product_id

例如:图书是Product_category.collection,我希望获得所有图书收藏产品。

我也尝试了__方法。不知怎的,它不起作用。

1 个答案:

答案 0 :(得分:3)

双下划线是要走的路。

books = Product.objects.filter(category__collection='books')