models.pyに計算された値が必要です。以下はファイルmodels.py
です。私はprice
を期待通りに得ることができますが、price
はフィールドの1つとして表示されません。つまり、delivery_price
とsupport_price
と入力すると、price
フィールドが計算され、下のページ自体(添付画像)に表示されます。これが可能か、何か間違っていますか?Djangoのモデルで計算された値が必要
delivery_price = models.DecimalField(max_digits=10, decimal_places=0,default=0)
support_price = models.DecimalField(max_digits=10, decimal_places=0,default=0)
#def get_price(self):
# "Returns the price."
# return (self.delivery_price + self.support_price)
#price = property(get_price)
price = models.DecimalField(max_digits=10, decimal_places=0,editable=False)
def save(self, *args, **kwargs):
self.price = self.delivery_price + self.support_price
super(Product, self).save(*args, **kwargs)
非正規化の理由は何ですか? 'property'の代わりに、パフォーマンスがあなたに関するものなら' cached_property'を使うこともできます。 – cezar
私は 'decimal_places = 0'で' DecimalField'を持っているという点も得られません。 – cezar