Python 如何创建包含两个不同查询集之和的表
我的django应用程序中有以下型号:Python 如何创建包含两个不同查询集之和的表,python,python-3.x,django,django-models,django-views,Python,Python 3.x,Django,Django Models,Django Views,我的django应用程序中有以下型号: class Budget_Vendite(models.Model): product=models.ForeignKey() byproduct=models.ForeignKey() quant_jan=models.DecimalField() quant_feb=models.DecimalField() quant_mar=models.DecimalField() price_jan=models
class Budget_Vendite(models.Model):
product=models.ForeignKey()
byproduct=models.ForeignKey()
quant_jan=models.DecimalField()
quant_feb=models.DecimalField()
quant_mar=models.DecimalField()
price_jan=models.DecimalField()
price_feb=models.DecimalField()
price_mar=models.DecimalField()
我想创建一个数据集,用于计算每个副产品的每月金额,由quant\u jan*price\u jan
广告示例:
byproduct | jan | feb |
byproduct_1 | quant_jan*price_jan | quant_feb*price_feb |
在模型中定义每个月的方法,例如:
def january(self):
return self.quant_jan * self.price_jan
.
.
.
def march(self):
return self.quant_mar * self.price_mar
并在相应列中的模板html中调用它们
每月金额:
def year_sum(self):
months = ((quant_jan, price_jan), ...)
sum = 0
for month in months:
sum += getattr(self, month[0]) * getattr(self, month[1])
return sum
好的,如果我想算出所有副产品的总和,那就用另一个方法,叫做total_sum(),调用其中的每个函数,求和你的值,使你的解决方案有效,但我想用一个例子,比如a
monthly_sum=list(0表示范围内的m(12))
我每个月填写一个quant_jan*price_jan
我的第一个想法是提供一个元组,例如:((quant_jan,price_jan),(quant_feb,price_feb),…)并使用getattr()获取值并将其相乘。您能给我一个编辑您的问题的示例吗?因为我还不擅长python