【发布时间】:2015-03-03 00:06:14
【问题描述】:
大家好,我有这样的问题:
我正在使用带有 rvm gemsets 的 rails 4.2.0(使用正确的 ruby 版本和正确的 gemset 以及已安装的 gems)。 我正在尝试使用无论何时 gem 执行一些 cron 任务,但我无法使其工作。
这就是我所拥有的:
宝石文件
gem 'whenever', :require => false
型号
class SomeModel < ActiveRecord::Base
end
schedule.rb
set :environment, :development
every 1.minute do
runner "SomeModel.create"
end
使用后
每当 --update-crontab 存储时
我的 Crontab
# Begin Whenever generated tasks for: /home/user/project/config/schedule.rb
* * * * * /bin/bash -l -c 'cd /home/user/project && bin/rails runner -e development '\''SomeModel.create'\'''
# End Whenever generated tasks for: /home/user/project/config/schedule.rb
在 cron.log 中,我看到该任务已执行,但在 db 中没有看到任何新对象(我正在使用 mysql)。
所以我尝试使用模型创建新项目。我使用 mysql-lite 并在 gem 具有相同类型的任务时添加。然后我更新了 crontab 并且每当开始工作正常,直到我使用 mysql 而不是 mysql-lite。
我没有发现任何使用 mysql 的故障排除和任何时候在任何时候的文档,所以我坚持这样做(使用控制台我可以毫无问题地创建对象)。
【问题讨论】:
标签: ruby-on-rails development-environment whenever