サービスとしてRubyスクリプトを実行する必要があります。スクリプトは、rails-appのActiveRecordにアクセスする必要があります。レール上にルビーサービスを置くための最良の方法は何ですか?
どのような方法が最適でしょうか?レーキタスク? WindowsとLinuxの両方でサービスとしてどのように起動することができますか?
サービスとしてRubyスクリプトを実行する必要があります。スクリプトは、rails-appのActiveRecordにアクセスする必要があります。レール上にルビーサービスを置くための最良の方法は何ですか?
どのような方法が最適でしょうか?レーキタスク? WindowsとLinuxの両方でサービスとしてどのように起動することができますか?
サービスとしてのスクリプトが1つだけの場合は、Sinatraアプリを使用する方がいいかもしれません。
このstackoverflowのスレッドは、Windows上のサービスとしてのRubyを実行する方法の良い答えを持っているようだ:Running a Ruby Program as a Windows Service?
そして、ここではレールの外にはActiveRecordをインスタンス化する方法である:http://www.juixe.com/techknow/index.php/2009/01/14/activerecord-ruby-on-rails-optional/
使用したい場合あなたのRailsアプリケーションと同じモデルであれば、それらを要求することができます。ここで
は、コンソールに例を示します
irb(main):001:0> require 'ActiveRecord'
=> true
irb(main):002:0> ActiveRecord::Base.establish_connection(
irb(main):003:1* :adapter => 'mysql',
irb(main):004:1* :database => 'development',
irb(main):005:1* :username => 'root',
irb(main):006:1* :password => '',
irb(main):007:1* :host => 'localhost'
irb(main):008:1> )
=> #<ActiveRecord::ConnectionAdapters::ConnectionPool:0x59613
irb(main):009:0> require 'app/models/User.rb'
=> ["User"]
irb(main):010:0> User.find(1)
=> #<User id: 1, first_name: "Michael">
幸運!