我想随时使用'这个宝石检查我的所有项目仍然没有超出截止日期。我编写了这段代码,但它没有工作并改变了数据库中的状态。有人可以给我一些建议。谢谢你的帮助!
配置/ schedule.rb
set :environment, :development
every 1.day, at: '11:3 am' do
rake 'project:close_project'
end
应用程序/模型/ project.rb
def self.close_project(dt)
# 締切日が過ぎているプロジェクトを抽出
Project.where(deadline > dt).each do |project|
# 対象プロジェクトを終了状態に
project.update!(status: 'closed')
end
端
product.rake
namespace :product do
task :close_project => :environment do
Project.close_project(Date.today)
end
end
答案 0 :(得分:0)
每当根据CronJob格式创建作业时。因此,要定期运行您的作业,您应该运行whenever
命令并通过运行crontab -e
将结果复制并粘贴到crontab,或者仅通过运行whenever -w
自动执行此任务。