这就是我所拥有的:
state_machine :state, :initial => :open do
after_transition :on => :buy, :do => :send_buy_notification_email
after_transition :on => :take, :do => :send_take_notification_email
after_transition :on => :accept, :do => :send_accept_notification_email
after_transition :on => :cancel, :do => :send_cancel_notification_email
现在我想在初始状态打开时触发 :send_trade_notification_email 。
我怎么做?
干杯,
乔尔
最佳答案
由于状态转换类似于“通常”的 AR 回调,也许您的方法应该在 after_create 回调中触发?毕竟,您的转换是从 nil 到 open ,这将在创建时发生:
after_create :send_trade_notification_email
如果允许,它将完成与以下相同的事情:
after_transition :on=>:create, :do=>:send_trade_notification_email
关于ruby-on-rails - rails state_machine : How do I trigger an action on :initial state?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8903092/