ActiveRecord 模型中 after_save 回调中删除了瞬态属性

问题描述 投票:0回答:1

如何在 Rails ActiveRecord 类中的 after_save 回调期间使用瞬态属性?

这就是我现在正在做的事情。

我有一个模型类,它具有由数据库支持的多个属性。我想添加一个瞬态属性,比如

a
,它不会存储在数据库中。

class Model < ActiveRecord::Base

 after_save :after_save_callback_func
 attr_accessor :a

 def after_save_callback_func
   puts self.a
 end

 def some_random_func
  self.a = 'Hello World'
 end
  
end

我希望在

a
回调期间使用瞬态属性
after_save
中设置的值,但我发现瞬态属性不再存在于
self
对象中。

ruby-on-rails ruby activerecord
1个回答
0
投票

正如上面评论中提到的,这种模式按原样工作。不起作用的是单元测试的规范文件中的这个。

© www.soinside.com 2019 - 2024. All rights reserved.