Ruby on rails Rails加载初始值设定项类
在我的Rails应用程序中,我创建了一个initializer,其职责是:Ruby on rails Rails加载初始值设定项类,ruby-on-rails,initializer,Ruby On Rails,Initializer,在我的Rails应用程序中,我创建了一个initializer,其职责是: 需要我的应用程序的服务层 Dir[File.expand\u path('services/*.rb',\\uu File\uu)]。每个{文件{需要文件} 创建这些服务并在其中注入依赖项 但现在,当我在开发项目中更新文件时,rails服务器开始抱怨类不再可用 为了让它工作,我必须删除我的tmp目录,然后再次运行rails服务器 我如何解决这个问题?哪个tmp/目录?里面有什么 重新启动并不奇怪,因为您使用的是初始值设定
Dir[File.expand\u path('services/*.rb',\\uu File\uu)]。每个{文件{需要文件}
我如何解决这个问题?哪个tmp/目录?里面有什么 重新启动并不奇怪,因为您使用的是初始值设定项。它们在引导时加载一次,仅此而已 也许能帮你自动重新装填环境 也许你要找的不是初始化者
答案取决于你想要达到的目标。这更像是一个架构问题,而不是一个代码/开发难题。我认为创建初始值设定项来加载这些文件的更好解决方案是在application.rb文件中使用以下语法:
module AppName
class Application < Rails::Application
#other config stuff here
config.eager_load_paths << "path to your services directory"
end
end
模块AppName
类应用程序 config.eager\u load\u路径tmp目录是我的本地缓存目录