リンクをクリックしたり、自分で関数をトリガーしたりすることなく、特定の時点でRailsアプリケーションで関数を実行したいのですが。
スレッドはそれを達成する方法ですか、それとも私が欲しい機能を達成するための他のより簡単な方法はありますか?
前もって感謝します。
リンクをクリックしたり、自分で関数をトリガーしたりすることなく、特定の時点でRailsアプリケーションで関数を実行したいのですが。
スレッドはそれを達成する方法ですか、それとも私が欲しい機能を達成するための他のより簡単な方法はありますか?
前もって感謝します。
ソリューション/ソリューションを調整する方が簡単なので、正確に何を呼び出したり、実行したりするかなどのコードサンプルを提供してください。
あなたの質問に答える私のスタブは、私が最近、与えられた時間間隔でリマインダーメールを送信する「リマインダー」システムを実装したことです。これを実現するために、「delayed-job」gem(https://github.com/tobi/delayed_job)を使用しました。これにより、ユーザーが選択した特定の時間間隔で実行されるリマインダーをキューに入れることができます(ただし、これも可能です)。アプリで設定する必要があります。各月曜日にコードロジックがトリガーされます)。より多くの説明とコードを提供することを考えると、スレッドは目標を達成するための方法でもあります。
また、 Wheneverを使用してジョブを自動化することもできます。このプラグインを使用すると、Railsアプリケーションからcronジョブを簡単に自動化できます。
たとえば(Githubで詳細を確認してください):
every :hour do
runner "Model.do_something"
end
every 1.day, :at => '4:30 am' do
runner "Model.do_something"
end
これは時々非常に便利であり、あなたはそれが役に立つと思うかもしれません。