我打算使用我在初始化对象时设置的模型的一些瞬态属性,然后在 after_save 或 after_commit 回调中读取它。我能预见的唯一问题是,在多服务器环境中,如果在其他实例上调用 after_save,我将无权访问瞬态变量。那么,想知道是否有可能在与其创建/更新位置不同的实例上执行 after_save 回调?
我正在尝试做的示例:
u = User.new email: 'x'
u.transient_attr = 'y'
类的定义User
:
class User{
after_save :check_something
def check_something
if transient_attr == 'y'
//do something
end
end
}
如您所见,我正在启动对象并设置瞬态属性。是否可以保证当我收到 after_save 回调时,我在对象上设置的瞬态属性将可用?