0
目前我有一個rake任務,我將使用Heroku Scheduler每日運行一次。使用Ruby On Rails自動生成日誌文章使用Ruby On Rails
只要今天的日期在用戶帳戶的「開始日期」之後,它現在每天都會爲用戶生成一個新的帖子。
這是耙任務的代碼:
namespace :abc do
desc "Used to generate a new daily log"
task :create_post => :environment do
User.find_each do |currentUser|
starting_date = currentUser.start_date
Post.create!(content: "RAKED", user: currentUser, status: "new") if Date.today >= starting_date && Date.today.on_weekday?
end
puts "It worked yo"
end
end
我的問題是,如果有人讓一個帳戶,然後一段時間設定開始日期的過去(這樣他們就可以在舊帖子填寫)我目前的耙子任務將不會生成每日回帖。有沒有人有任何關於如何解決這個問題,使耙子任務仍然執行其當前的工作,但也處理這種情況?
謝謝,這是一個很好的答案! – Andrew
我很高興它幫助..我會建議你改變主題/問題是更一般的。就像你所面對的回溯或類似錯誤......問題實際上並不是「如何自動生成日常帖子」,而是不同。 –
嗨,只是一個後續行動:我試圖實現這一點,我得到以下錯誤:NoMethodError:未定義的方法'upto' – Andrew