兩個表如何在Django如何選擇結果的形式在Django
我的模型如下選擇結果形成了兩個表,
from django.db import models
from apps.admin.product.models import Product
class Cabinet(models.Model):
id = models.IntegerField(primary_key=True)
cabinet_name = models.CharField(max_length=45L, blank=True)
class Meta:
db_table = 'cabinet'
class ProductCabinetConstruction(models.Model):
id = models.IntegerField(primary_key=True)
product = models.ForeignKey(Product, null=True, blank=True)
cabinet_construction = models.ForeignKey(Cabinet, null=True, blank=True)
size = models.FloatField(null=True, blank=True)
class Meta:
db_table = 'product_cabinet_construction'
我想如下執行MySQL查詢,
SELECT DISTINCT (cabinet.cabinet_name), product_cabinet_construction.product_id FROM product_cabinet_construction, cabinet WHERE product_cabinet_construction.product_id = 33
,並試圖爲
models.ProductCabinetConstruction.objects.select_related().filter(product=productObj.id)
但未能....任何想法有什麼錯我
什麼不成? 'pcc = ProductCabinetConstruction.objects.select_related(「product」)。filter(product__id = productObj.id)'應該工作。如果你想訪問該對象,那麼你可以訪問'pcc.product'。 'select_related'不會影響結果,它只是幫助提高查詢效率 –
試試這個'models.ProductCabinetConstruction.objects.values('cabinet_construction__cabinet_name')。filter(product__id = productObj.id).distinct()' –