我想运行一个独立的 ruby 脚本,我需要在其中使用我的 RoR 环境。具体来说,我需要我的模型扩展 ActionMailer 和 ActiveRecord。我还需要从我的 database.yml 中读取数据库配置。我该怎么做?
Sanjay
问问题
1936 次
3 回答
9
最简单的方法是将脚本的 shebang 从:
#!/usr/bin/ruby
到
#!/path/to/your/rails/script/runner
等等,您的脚本将在加载完整的 rails 环境的情况下运行。您还可以运行脚本./my_script -e production
以使其与生产数据库一起运行。
于 2008-12-02T21:18:58.303 回答
0
查看此线程: 如何运行使用我的 Rails 模型的 Ruby 任务?
从本质上讲,它归结为:
require "#{ENV['RAILS_ROOT']}/config/environment.rb"
玩得开心!
于 2008-12-03T06:55:25.800 回答
0
我认为最好的方法是让它成为一个 rake 任务。
# lib/tasks/mystuff.rake
desc 'do my stuff'
task :my_stuff => [:environment] do
# do my stuff
end
[:environment] 节加载 rails 环境。
于 2008-12-03T15:48:29.653 回答