Ruby on rails Ruby独立脚本中的RoR环境
我想运行一个独立的ruby脚本,我需要在其中使用RoR环境。具体来说,我需要扩展ActionMailer和ActiveRecord的模型。我还需要从我的database.yml读取数据库配置。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 "#{
我该怎么做?最简单的方法是将脚本的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