【发布时间】:2017-05-07 22:35:59
【问题描述】:
我正在尝试同时执行这两个操作,但一次只返回一个。如果我删除其中任何一个,另一个会被执行。有没有办法让他们两个同时工作?我说的是 Grossannualsalary 和 textDeduct。
class Salarie(models.Model):
grossmonthlysalary = models.FloatField(
_('Monthly Salary'),
null=False,
blank=False,
default=0.00
)
monthlyincometax = models.FloatField(
_('Monthly Income Tax'),
null=False,
blank=False
)
contractperiod = models.IntegerField(
_('Contract Period'),
null=False,
blank=False
)
grossannualsalary = models.FloatField(
_('Gross Annual Salary'),
null=True,
blank=True
)
taxDeduct = models.FloatField(
_('Tax Deduction'),
null=False,
blank=False,
default=0.00
)
def save(self, *args, **kwargs):
self.grossannualsalary = self.grossmonthlysalary * self.contractperiod
super(Salarie, self).save(*args, **kwargs)
def save(self, *args, **kwargs):
self.taxDeduct = self.grossmonthlysalary * self.monthlyincometax / 100
super(Salarie, self).save(*args, **kwargs)
【问题讨论】:
-
为什么
grossannualsalary总是一个计算的结果?为什么不把它变成一个财产呢?taxDeduct也是如此 -
为什么你定义了两次保存方法?名称只能有一种方法。为什么不把它们放在同一个函数中呢?