2017-05-08 94 views
0

我正在制作一个类似博客的应用程序&我目前有一个rake任务,如果当天超过用户的开始日期,它会每天自动生成一个新帖子。我想改进它,以便如果新用户注册一个帐户并选择过去的开始日期,例如一个月前,耙子任务将自动生成上个月的所有帖子,并继续其当前功能。(Ruby on Rails)如何改进自动生成博客帖子的Rake任务?

有没有人有任何建议,如何实现这一点?

这是耙任务的代码:

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 

回答

0

您需要使用cron jobsrake任务。在ruby中,您可以随时使用具有清晰语法的gem来编写和部署cron作业。关于它也有railscasts。我们来试试吧。