我有一个多租户应用程序,其中每个租户信息都存储在数据库中。
我在环境配置(development.rb,production.rb)中有一些变量,我想用数据填充数据。
尝试调用该模型似乎无法正常工作。
有没有办法在应用程序初始化程序中调用模型?
修改
以下是代码:
# production.rb
Rails.application.configure do {
config.custom_variable = MyModel.myattribute
}
这会返回ActiveRecord::ConnectionNotEstablished
错误
答案 0 :(得分:1)
初始化程序在加载ActiveRecord之前运行,因此在访问ActiveRecord之前,您需要等待ActiveRecord。
将代码包装在ActiveSupport#on_load
块中应该有效。
# production.rb
Rails.application.configure do {
ActiveSupport.on_load(:active_record) do
config.custom_variable = MyModel.myattribute
end
}