我希望在执行 Rake 任务时运行某个初始化程序,但在运行 Rails 服务器时不运行。
区分 Rake 调用和服务器调用的最佳方法是什么?
Rake 允许您指定任务的依赖关系。最好的建议操作是将特定于 rake 的初始化放入其自己的任务中,而该任务又取决于“环境”任务。例如:
namespace :myapp do
task :custom_environment => :environment do
# special initialization stuff here
# or call another initializer script
end
task :my_task => :custom_environment do
# perform actions that need custom setup
end
end
如果您想创建一个特定于 rake 的初始化脚本目录,就像我们为 Rails 所做的那样,我们只需在我们的:custom_environment
task.
task :custom_environment => :environment do
Dir.glob("config/rake-initializers/*.rb").each do |initializer|
require initializer
end
end
这允许您将特定于 rake 的初始化器与常规初始化器分开。你只需要记住依赖:custom_environment
你设置了。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)