基本上我有一个让一切initializer class
都RAILS_ROOT/config/initialiers/app_constant.rb
易于控制的能力。
class AppConstant
APIURL = 'http://path.to.api'
end
在 中RAILS_ROOT/model/user.rb
,我有以下设置:
class User < ActiveResource::Base
self.site = AppConstant::APIURL
end
运行时rails s
,出现以下错误
<class:User>: uninitialized constant User::AppConstant::APIURL
我知道问题是因为 Rails 在创建类之后运行 Initializers。在 Rails 设置它的类之前,有什么方法可以让一些 Initializers 运行?
最后,这个问题通过在 Rails 加载模型之前添加require "#{Rails.root}\conf\initializers\app_constant.rb"
到加载来解决。application.rb