我是 Ruby 和 Rails 的新手。
我正在使用 AASM 将状态机行为放入模型类中。根据新旧状态,我想以不同的方式处理状态更改事件。
我如何使用“to”和“from”状态作为参数调用“after”回调,或者如果它们有我需要的内容,如何访问 AASM 持有的内部字段?...还是我只需要在回调之前和之后都添加并将之前的状态保存在之前的回调中?
我是 Ruby 和 Rails 的新手。
我正在使用 AASM 将状态机行为放入模型类中。根据新旧状态,我想以不同的方式处理状态更改事件。
我如何使用“to”和“from”状态作为参数调用“after”回调,或者如果它们有我需要的内容,如何访问 AASM 持有的内部字段?...还是我只需要在回调之前和之后都添加并将之前的状态保存在之前的回调中?
您可以访问 ModelClass.aasm_state()
如果您对不同的状态有不同的转换。
Aasm 有很好的文档记录。您可以在 aasm 的 README 中找到说明:https ://github.com/rubyist/aasm
state :dating, :enter => :make_happy, :exit => :make_depressed
def make_happy
# do something
end
...