我想知道如何计算两个字段的乘积:FeatureInfo中的得分和Feature中的比率。
当我在管理员面板中保存我的FeatureInfo时,它没有更新我的字段总数。如何更新字段总数?
models.py
class Feature(models.Model):
name = models.CharField(max_length=255, unique=True, null=True)
ratio = models.IntegerField(null=True)
class FeatureInfo(models.Model):
name = models.CharField(max_length=255, unique=True, null=True)
score = models.IntegerField(null=True)
feature = models.ForeignKey(Feature, on_delete="CASCADE")
_total = models.IntegerField(db_column='total')
@property
def total(self):
return self.score * self.feature.score
admin.py
@admin.register(FeatureInfo)
class FeatureInfoAdmin(admin.ModelAdmin):
fields = ('id', 'feature', 'score', 'name', 'total')
readonly_fields = ('id', 'total')
list_filter = ('feature',)
list_display = list_filter
答案 0 :(得分:0)
你可能想要一个房产。
class FeatureInfo(models.Model):
name = models.CharField(max_length=255, unique=True, null=True)
score = models.IntegerField(null=True)
feature = models.ForeignKey(Feature, on_delete="CASCADE")
@property
def total(self):
return self.score * self.feature.ratio