我在after_save
课程上有一个Scorecard
回调。
在此回调中,我使用不同的模型BalanceLedger
创建并保存对象。
我需要将消息传递给after_save
Scorecard
这可能吗?
e.g。 (这不是有效的,但试图说明我的观点)
scorecard.total = new_total
scorecard.save(message: 'This is an Admin correction')
class Scorecard < ActiveRecord::Base
after_save do
BalanceLedger.create!(total: total, message: params[:message])
end
答案 0 :(得分:1)
也许使用:attr_accessor
来设置虚拟属性?您可以设置message
值,并从回调中检索它。
scorecard.total = new_total
scorecard.message = 'This is an Admin correction'
scorecard.save
class Scorecard < ActiveRecord::Base
attr_accessor :message
after_save do
BalanceLedger.create!(total: total, message: message)
end
end