gpt4 book ai didi

ruby-on-rails - 仅对Rake任务运行初始化程序

转载 作者:行者123 更新时间:2023-12-03 16:04:34 24 4
gpt4 key购买 nike

我希望某个特定的初始化程序在执行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 :custom_environment => :environment do
Dir.glob("config/rake-initializers/*.rb").each do |initializer|
require initializer
end
end

这使您可以将特定于rake的初始化器与常规初始化器分开。您只需要记住要依赖设置的 :custom_environment

关于ruby-on-rails - 仅对Rake任务运行初始化程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4323632/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com