【发布时间】:2013-03-31 04:44:17
【问题描述】:
我尝试在一段时间(6 个月)后使用 gem 'whenever' 进行记录清理。
在我的每当调度器中:
every 1.month, at: '1am' do
rake 'lib/tasks/cleanup_user.rake'
end
在 lib/tasks/cleanup_user.rake 中
@user = User.all.where(:created_at > 'Time.6.month.ago').delete
这似乎是对的。但是,我收到错误“未初始化的常量用户”。我在rails方面相对较新。请帮助我。
编辑:我通过运行 clean 一行命令更改了游戏:
set :output, "log/cron.log"
every 1.minutes, :environment => :development do
command 'User.where("confirmed = 0 AND created_at <= ?", 6.months.ago).delete'
end
我设置了具体的环境,并在命令中运行:
whenever --set environment=development --update-crontab userscleaning
在 crontab 中检查,它在那里但仍然无法正常工作。有什么想法吗?
【问题讨论】:
-
确认一下,您是:a) 通过 capistrano 部署还是 b) 运行when 命令并更新您的 crontab?
-
我在每次使用 crontab 时都在运行。