ruby-on-rails – Rails – 每当宝石 – 动态值

可以说我有这样的cronjob:
every 1.day,:at => '4:30 am' do  
  runner "MyModel.task_to_run_at_four_thirty_in_the_morning"  
end

虽然,我想让’1.day’更具动态性,例如通过管理页面中的表单更改值.

然后它可能看起来像这样:

every Constant.find(2).value,:at => '4:30 am' do

要么

@const = Constant.find(2)
every @const.span,:at => @const.time do

任何人都可以想出如何使这项工作?

显然,这样做的原因是我可以使用存储在我网站上的数据库中的值,就像消息说的那样

<%= "The next update is in less than #{@const.time}" #or something similar %>

解决方法

我从来没有尝试过,但你应该能够通过加载Rails环境来实现这一点,以便你可以使用你的模型类.假设您的schedule.rb在config目录中,请在schedule.rb中使用require File.dirname(__ FILE__)“./ environment”(或Rails 3的“./application”).

但是,因为无论什么时候都在crontab中生成行,所以对任何Constant进行的任何更改都需要在–update-crontab再次运行时运行.

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...