我有一个参与者模型,有state_machine last_action。我想根据角色属性设置last_action的初始值。如果role是“Tutor”,则初始值为“value 1”,而如果role为“Student”,则初始值为“value 2”。
我该怎么做? (我在Rails 3.0中使用state_machine gem)。 谢谢。
答案 0 :(得分:0)
before_validation :set_initial_last_action, :on => :create
state_machine :last_action do
...
end
private
def set_initial_last_action
if role == 'Tutor'
self.last_action = 'value 1'
elsif role == 'Student'
self.last_action = 'value 2'
end
end
干杯