我有以下模式:Django的ORM跨產品
class PCs(models.Model):
model = models.ForeignKey(Products, primary_key=True)
speed = models.IntegerField(max_length=256, blank = True, null=True)
ram = models.IntegerField(max_length=256, blank = True, null=True)
hd = models.IntegerField(max_length=256, blank = True, null=True)
price = models.IntegerField(max_length=256, blank = True, null=True)
class Printers(models.Model):
model = models.ForeignKey(Products, primary_key=True)
color = models.BooleanField()
type = models.CharField(max_length=256, blank = True, null=True)
price = models.IntegerField(max_length=256, blank = True, null=True)
我試圖運行下面的SQL查詢:
SELECT *
FROM PCs P, Printers T
WHERE p.price + t.price <= 1000
但我對如何做到這一點完全喪失用Django的ORM。是唯一的方法來做到這一點,但從PC和打印機獲取所有對象,並檢查所有可能的組合?
有點挑剔,但模型名稱應按照慣例單數。 –