我正在编写一个具有 2 个模型的应用程序,用户和每日。每个用户都有_many 日报。我正在尝试每天午夜为每个用户创建每日报告。我如何在rails中做到这一点?在 Backbone 中,我只需找到从现在到午夜之间的时间,为该时间量设置超时,然后创建一个新模型,并递归调用该函数。我查看了Rails:在每天的特定时间重置模型属性,并看到了随时使用和 cron 的建议,但我不确定是否有更好的方法来完成我想要做的事情。
我想出的一个临时解决方案是,如果当前用户还没有包含今天日期的 Daily,则在用户访问主页时创建一个新 Daily。如果用户在当天访问主页,则存在仅创建一天报告的问题。如果用户在主页上导航,则不会创建报告,而且我认为在每个操作中都进行检查的解决方案过于侵入性。Rails 中有没有办法自动执行此任务?
编辑:我的另一个想法是将 after_create 放入我的 Daily 课程中,然后使用与我的 Backbone 解决方案相同的解决方案。这是实现这一目标的最佳方式吗?