0
我正在使用Ruby on Rails 3.2.9,我只是试图使用state_machine gem。我有以下语句:如何在每次触发事件时设置属性值?
class Article < ActiveRecord::Base
state_machine :attribute => :status, :initial => :unconfirmed do
state :confirmed, :value => 'confirmed'
state :unconfirmed, :value => 'unconfirmed'
event :confirm do
transition :unconfirmed => :confirmed
end
event :unconfirm do
transition :confirmed => :unconfirmed
end
end
end
我也为Article
模型意守最后一次:status
切换到:confirmed
当confirmed_at
属性。
如何将confirmed_at
属性初始化为当前时间? 应如何每次触发:confirm
事件时,我将confirmed_at
设置为当前时间?
如何初始化'confirmed_at'属性为当前时间? – user12882
'set_confirmed_at'方法不能做到这一点? –
我的意思是当对象是一个* new *对象并且不改变状态(即,'confirm'事件没有被触发时)的情况。 – user12882