【发布时间】:2012-04-12 10:49:46
【问题描述】:
Rails 3.1 + 每当宝石。 我在任何时候安排了 2 个工作。然而,显然什么也没有发生。 我已经通过 Heroku 控制台尝试了这些方法,并且它们有效。所以我认为他们在任何时候都不会被解雇。我错过了什么吗?
config/schulde.rb
every 1.day, :at => '03:30' do
runner "Alarm.proba"
end
every 1.day, :at=> '3:32 am' do
runner "Alarm.proba2"
end
报警模型
def self.proba
@event = Event.find(10)
@user =User.find(12)
EventNotifier.alarm(@event, @user).deliver
end
def self.proba2
@event = Event.find(10)
@user =User.find(13)
EventNotifier.alarm(@event, @user).deliver
end
$ crontab -l
# Begin Whenever generated tasks for: quasi
5 4 * * * /bin/bash -l -c 'cd /Users/sergioabendivar/railsProjects/Tutos/quasi && script/rails runner -e production '\''Alarm.proba'\'''
5 4 * * * /bin/bash -l -c 'cd /Users/sergioabendivar/railsProjects/Tutos/quasi && script/rails runner -e production '\''Alarm.proba2'\'''
我认为它正在开发中,因为我的控制台现在显示“你有一封电子邮件”。实际上,如果我查看电子邮件,我会收到很多。
【问题讨论】:
-
如果在本地运行,您可以在控制台中输入 enable sendmail 来处理传递。还要确保您的 smtp 属性设置正确。
-
它在heroku中。如果从 heroku 控制台运行 Alarm.proba,我会收到电子邮件。它工作正常。
-
解决方案!每当 gem 被删除并 Heroku Scheduler 添加时。 blog.heroku.com/archives/2011/11/12/…
标签: ruby-on-rails ruby-on-rails-3.1 whenever rails-3.1