我有这样的代码在家庭控制器如何让代码每30分钟运行一次?
def index
urls = RssStream.select("rss_streams.url").all.map { |v| v[:url] }
RssStream.update_all_feeds(urls)
end
我想使运行这段代码每30.minutes。 我该怎么办?
我已经通过创业板尝试“只要”,什么都不会发生
我有这样的代码在家庭控制器如何让代码每30分钟运行一次?
def index
urls = RssStream.select("rss_streams.url").all.map { |v| v[:url] }
RssStream.update_all_feeds(urls)
end
我想使运行这段代码每30.minutes。 我该怎么办?
我已经通过创业板尝试“只要”,什么都不会发生
这个代码不应该被放置在你的控制器。将它解压缩成own Rake task,然后让它成为executed by whenever!
你应该把它放到Rake任务中,并且可能使用cron作业来执行它。
为代码编写脚本并安排30分钟的cron作业。你可以为此使用webmin。 链接参考: - http://www.hosting.com/support/webmin/create-new-cron-jobs-using-the-webmin-interface 或 http://railscasts.com/episodes/164-cron-in-ruby
你尝试用'whenever'什么码? – Dogbert
您可以使用“每当”或“发条”宝石,例如每30分钟调用一次您的方法。 –
@Dogbert'每1.hours做 转轮 “网址= RssStream.select(” rss_streams.url “)all.map {| V | V [:URL]}。 RssStream.update_all_feeds(URL)的” 端 ' – Anton