Ruby on rails Ruby独立脚本中的RoR环境

Ruby on rails Ruby独立脚本中的RoR环境,ruby-on-rails,ruby,environment,Ruby On Rails,Ruby,Environment,我想运行一个独立的ruby脚本,我需要在其中使用RoR环境。具体来说,我需要扩展ActionMailer和ActiveRecord的模型。我还需要从我的database.yml读取数据库配置。 我该怎么做?最简单的方法是将脚本的shebang更改为: #!/usr/bin/ruby 到 等等,您的脚本将在加载完整rails环境的情况下运行。您还可以将脚本作为/my_script-e production运行,以使其与生产数据库一起运行 查看此线程: 基本上可以归结为: require "#{

我想运行一个独立的ruby脚本,我需要在其中使用RoR环境。具体来说,我需要扩展ActionMailer和ActiveRecord的模型。我还需要从我的database.yml读取数据库配置。
我该怎么做?

最简单的方法是将脚本的shebang更改为:

#!/usr/bin/ruby

等等,您的脚本将在加载完整rails环境的情况下运行。您还可以将脚本作为
/my_script-e production
运行,以使其与生产数据库一起运行

查看此线程:

基本上可以归结为:

require "#{ENV['RAILS_ROOT']}/config/environment.rb"

玩得开心

我认为最好的方法是把它变成一个rake任务

   # lib/tasks/mystuff.rake
   desc 'do my stuff'
   task :my_stuff => [:environment] do
     # do my stuff
   end
[:environment]节加载rails环境

   # lib/tasks/mystuff.rake
   desc 'do my stuff'
   task :my_stuff => [:environment] do
     # do my stuff
   end