0
考虑这些伪模式:Django的ORM对象计数
class BaseProduct:
quantity_available = Integer
class Box(BaseProduct):
items_in_box = Integer
>> BaseProduct.objects.count()
>> Integer
但我怎么检索产品的总数量,因此:
for each object[quantity_available * items_in_box] * total_objects
解决方法:
我使用西面维瑟的“总和'作为部分解决方案,将属性添加到基类:
@property
def _box_count(self):
try:
return self.items_in_box * self.quantity_available
except AttributeError:
return self.quantity_available
sum([item._box_count for item in BaseProduct.objects.all()])
我不明白。你在找盒子的总数,还是总数? “items_in_box”和“quantity_available”如何相关? – 2012-03-29 14:16:27
如何管理数据库中从'BaseProduct'到'Box'的继承?您是否使用文档中列出的方法之一? https://docs.djangoproject.com/zh/dev/topics/db/models/#model-inheritance – 2012-03-29 14:20:10
BaseProduct有一个quantity_available字段(整数)。 Box是来自BaseProduct的继承,Box也可以容纳X产品。假设你卖伞,每件和每箱。我想要伞的总存量 – 2012-03-29 14:22:29