我试图让类Guide的对象成为类中其他对象计算的值。 这是我在我的代码中获得了多远,但却出现了错误
Expected type 'int', got 'IntegerField' instead.
如何让它发挥作用?
这是我的代码:
class Guide(models.Model):
guide_title = models.CharField(max_length=200)
guide_category = models.CharField(max_length=70)
guide_why = models.TextField()
guide_how = models.TextField()
user_current_conversion_rate = models.IntegerField(default=0)
user_optimal_conversion_rate = models.IntegerField(default=0)
user_monthly_visitors = models.IntegerField(default=0)
user_average_order_value = models.IntegerField(default=0)
user_increase_conversion_rate = models.IntegerField(default=0)
@property
def user_increase_conversion_rate(self):
return int(
(self.user_monthly_visitors*(self.user_optimal_conversion_rate/100))*
self.user_average_order_value) -
((self.user_monthly_visitors*(self.user_current_conversion_rate/100))*
self.user_average_order_value)
答案 0 :(得分:0)
如果需要通过@property
对字段进行处理,可以更改字段名称以添加下划线(按照惯例),然后编写属性getter和setter方法。就这样,Django干净地知道如何设置字段,并且可以控制它的设置方式。
请参阅:
https://www.stavros.io/posts/how-replace-django-model-field-property/