1

コードをRakeタスクまたはモデルに配置するのがRailsの方法なのか、私は混乱しています。

  1. 友人の 1 人が 1 日に何らかのアクティビティを行った場合に、ユーザーにメールを送信するためのバックグラウンド ジョブとしてのみ実行されるコードがいくつかあります。
  2. モデルまたは Rake タスクのいずれかからコードを実行できるようにするメソッド/タスクの実行をスケジュールするために、 Whenever gemを使用しています。

モデルまたは Rake タスクにバックグラウンド ジョブのみのコードを配置するのが Rails の方法かどうかというこの初心者の質問について、誰か助けてもらえますか?

4

1 に答える 1

1

これは、Rails の方法とは関係なく、オブジェクト指向プログラミングとは関係ありません。アプリのあらゆる場所で使用できるように、ビヘイビアをクラスに配置する必要があると思います。レーキタスクに配置すると、そこで動作します。そして、この種のレーキ タスクは何かを行うことですが、その方法を知っているのはモデルか他のクラスである必要があります。たとえば、将来 resque を使用する場合、rake タスク内でロックされていないクラス内にある場合、コードの変更が簡単になります。

于 2013-04-20T00:52:26.090 に答える