2011-07-22 44 views
0

我目前在做Rails 3 cron通過應用程序?

http://localhost:3000/MyApp/update

該做的一切我想要它做的。我嘗試了delayed_job,但它沒有工作,所以我試圖使用cron或其他一些方法來做同樣的事情 - 我需要訪問更新才能完成任務,並且我希望它是在後臺完成多次。

我也考慮過cron + wget,但它看起來相當笨拙,而且Mac默認沒有使用wget(這很簡單,但是可以考慮替代方法)。

這樣做的最佳方法是什麼?

謝謝!

+0

Mac沒有wget,但它確實有捲曲,它可以以相同的方式工作。 – SaucyK

回答

1

您可以在Rails環境的上下文中使用runner執行任意Ruby代碼,例如,說你有一個像一個文件:

User.all.each { |u| u.send_email_update }

比你可以從像在命令行中運行它:

RAILS_ENV=production rails runner /path/to/script.rb

把那在cron琢磨吧。

當然,請確保運行cron的用戶在其$PATH中有rails或只通過其絕對路徑指定命令。

+2

如果你正在做cron + rails的任何事情,我建議看一看gem。 https://github.com/aKhadiemik/whenever – George