我使用红宝石AASM宝石。
有谁知道跳过某个州的正确方法是什么?
class Job
# ...
event :stage1_completed do
if stage2_completed?
transitions from: :stage1, :to => :stage3
else
transitions from: :stage1, :to => :stage2
end
end
# ...
end
在AASM中设置此功能的最佳方法是什么?
我在一组resque作业中使用此代码,因此stage1是一个resque作业,然后更新状态并开始下一个resque作业。对于stage2,然后是stage3
答案 0 :(得分:1)
您可以使用guards
。
event :stage1_completed do
transitions from: :stage1, :to => :stage3, :guard => :stage2_completed?
end