【问题标题】:When to Use Rake Tasks in Rails何时在 Rails 中使用 Rake 任务
【发布时间】:2013-04-20 00:14:16
【问题描述】:
我很困惑是将一些代码放在 Rake 任务还是模型中的 Rails 方式。
- 我有一些代码仅作为后台作业运行,以便在用户的某个朋友一天有任何活动时向用户发送电子邮件
- 我正在使用 Whenever gem 来安排方法/任务的执行,这允许我从模型或 Rake 任务中运行代码
有人可以帮助我解决这个新手问题,即 Rails 方式是否会将后台作业代码放入模型或 Rake 任务中?
【问题讨论】:
标签:
ruby-on-rails
ruby
rake
【解决方案1】:
这与 Rails 方式无关,但与面向对象编程无关。我会说你应该把行为放在一个类中,这样你就可以在你的应用程序的每个地方使用它。如果你把它放在 rake 任务中,你就会有行为。而这种 rake 任务是做某事,但谁应该知道如何去做,应该是模型或其他一些类。例如,如果您想在未来使用 resque,如果您将代码放在一个类中而不是锁定在 rake 任务中,那么对代码的更改会更容易。