前端之家收集整理的这篇文章主要介绍了
ruby-on-rails – 强制执行Rails回调的命令,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
如何执行回调顺序?例如,如何确保步骤1在步骤2之前发生:
after_save do
logger.info "Step 1"
end
after_save do
logger.info "Step 2"
end
我的实例就是使用第三方宝石,并确保在我自己的回调之前已完成(他们在回调上工作).我必须使用相同的回调(即不能使用前后组合).
谢谢!
如果您使用类级别的回调
函数,则按照它们定义的顺序
调用它们.
class Foo < ActiveRecord::Base
after_save :step1
after_save :step2
private
def step1
# stuff
end
def step2
# stuff
end
end
对于第三方宝石,这取决于您如何与宝石进行交互,但是有可能是首先被称之为首先被加载.
我不会建议使用def after_save风格,特别是在处理第三方宝石时.
原文链接:https://www.f2er.com/ruby/270980.html