在Rails项目中将脚本/运行器的Ruby脚本放在何处?

时间:2010-09-06 14:34:01

标签: ruby-on-rails cron whenever

我见过将它放在lib文件夹中的示例,以及app文件夹中的另一个示例。是否有标准的地方应该放在Rails 2.3.8和Rails 3惯例?

2 个答案:

答案 0 :(得分:1)

脚本必须进入/ scripts文件夹。当然,如何区分脚本与控制器/模型“必需”的常规ruby文件几乎总是存在混淆。如果您的脚本需要启动/维持您的应用程序,那么它是一个脚本。或者如果它是一个有时需要的ruby文件,或者只是某些情况下它补充了模型/控制器,你最好把它放在/ lib文件夹中。

答案 1 :(得分:1)

我通常没有跑步者脚本,而是直接调用模型上或lib中的某些方法。例如,我的Rails cronjobs通常如下所示:

/path_to_app/scripts/runner -e production "SomeModule.perform_task"

我认为这更清洁。

我曾经一次写过一个脚本,在这种情况下,我只是将它放在lib目录中:

/path_to_app/scripts/runner -e production /path_to_app/lib/perform_task.rb"