答案 0 :(得分:1)
在对这个问题的评论中提出的解决方案似乎是合理的,但如果你不介意,我会再提供一个。如果TotalRate
字段的值在某种程度上是重要的/易受攻击的,那么我永远不会将其存储在数据库中以避免应用程序用户可能的恶意操纵。如果有一些很好的理由/要求在数据库中存储计算值,我会在服务器端进行计算并在onBeforeCreate
和onBeforeSave
model events处理它:
// onBeforeCreate/onBeforeSave event handlers
record.TotalRate = record.PerHourRate * record.HoursNumber;