我想做一个after_save
,只有self.firm
不是零。
我试过这个:
after_save :set_firm_size, :if => self.firm
但这引发了错误。
我怎样才能让它工作?还是不能?
我想做一个after_save
,只有self.firm
不是零。
我试过这个:
after_save :set_firm_size, :if => self.firm
但这引发了错误。
我怎样才能让它工作?还是不能?
使用Proc
:
after_save :set_firm_size, :if => Proc.new { |a| a.firm.present? }
您可以像 shioyama 所说的那样创建一个 Proc,或者您可以创建一个方法,然后将该方法名称作为符号发送。例如:
after_save :set_firm_size, :if => :firm_present?
def firm_present?
self.firm.present?
end