我有一个Evaluation
有很多子评估的模型(自我参照)
class Evaluation < ApplicationRecord
has_many :sub_evaluations, class_name: "Evaluation", foreign_key: "parent_id", dependent: :destroy
before_save :calculate_score
def calculate_score
# do something
end
end
我正在使用子评估作为嵌套属性创建和更新评估。
calculate_score
方法在子评估创建时触发,但在更新时不会触发。我试过before_update
和after_validation
. 但似乎没有任何效果。
评估表
= form_for @evaluation do |f|
...
= f.fields_for :sub_evaluations do |sub_evaluation|
...
似乎是什么问题?