首页 > 解决方案 > 试图对 django 模型进行计算

问题描述

我有两个整数字段,我想将它们分开以获得第三个字段的值。@property def Pallets_Count(self): return self.CASES/self.CasesPerPallet

但数据库中的结果总是显示 null 。

标签: djangomodelinteger-division

解决方案


@property 
def Pallets_Count(self): 
    return self.CASES/self.CasesPerPallet

@property不会将任何内容保存到您的模型字段中。它就像一种方法。您可以像模型字段一样在模板中调用mypost.Pallets_Count

如果要将结果放入数据库字段,则需要覆盖save方法。但这可能不是必需的。财产很可能就足够了。

class MyModel(models.Model):
     # your other fields
     fieldname = models.FloatField()

     def save(self, *args, **kwargs):
         self.fieldname = self.CASES/self.CasesPerPallet
         super(MyModel, self).save(*args, **kwargs)

推荐阅读