过滤外键值django
filter on a foreign key value django
我正在努力为我的项目获取正确的查询。这是我的模型的示例:
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
,我想获取书籍 collection 的所有产品。
我也试过__方法。不知何故它不起作用。
双下划线是要走的路。
books = Product.objects.filter(category__collection='books')
我正在努力为我的项目获取正确的查询。这是我的模型的示例:
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
,我想获取书籍 collection 的所有产品。
我也试过__方法。不知何故它不起作用。
双下划线是要走的路。
books = Product.objects.filter(category__collection='books')