Я пытаюсь использовать плагин Whenever для рельсов для выполнения процесса модели в определенные моменты времени. Мой schedule.rb выглядит следующим образом:
every 1.day, :at => '5:30 am' do
runner "User.mail_out"
end
Моя модель выглядит следующим образом:
class User < ActiveRecord::Base
acts_as_authentic
def mail_out
weekday = Date.today.strftime('%A').downcase
@users = find(:conditions => "#{weekday}sub = t")
@users.each { |u| UserMailer.deliver_mail_out(u)}
end
end
Когда я пытаюсь запустить команду сценария / запуска -e development "User.mail_out", я получаю следующую ошибку:
/var/lib/gems/1.8/gems/rails-2.3.5/lib/commands/runner.rb:48: undefined method `mail_out' for #<Class:0xb708bd50> (NoMethodError)
from (eval):1
from /usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `eval'
from /var/lib/gems/1.8/gems/rails-2.3.5/lib/commands/runner.rb:48
from /usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
from /usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `require'
from script/runner:3
Кто-нибудь может указать, что идет не так? Также как я могу вручную вызвать процесс mail_out (из командной строки) для проверки работоспособности моей почтовой системы.
Спасибо!