如何在 rails 应用程序之外以正确的顺序加载/要求我的 activerecord 模型。我有许多 STI 模型,但我得到一个未初始化的常量异常。
$:.push File.expand_path("../../../app/models", __FILE__)
require "active_record"
Dir["#{File.expand_path('../../../app/models', __FILE__)}/*.rb"].each do |path|
require "#{File.basename(path, '.rb')}"
end
我有很多工作需要使用 resque 运行,我不想每次都加载我的 rails 应用程序并部署到所有工作机器
编辑:还有一点要澄清。有两个项目一个 Rails 项目和一个包含我的模型的 Rails 引擎项目。我不使用我的 resque 作业加载 rails 引擎本身,我只是在一个单独的类中使用上面的代码片段来加载模型上的活动记录。这一直有效,直到我添加了一些 STI 模型,由于命名导致子项尝试在父项之前加载。rails 引擎项目在 rails 项目中加载得很好,没有问题,这只是因为我试图在 rails 项目之外使用活动记录。