誰かが彼の投稿にコメントしたときにユーザーに電子メール通知を送信するためのこの短くて単純なコードがあります。私が懸念しているのは、このスニペットの場所です。
if user.settings.enabled_notifications && some_other_conditions
NotificationMailer.notify_topic_owner(comment,owner)
end
notify_topic_owner()
渡されたパラメータに従ってメールを送信するだけです。
基本的にsome_other_conditions
、メールを送信するために真と評価されるいくつかの3〜4の条件を含めます。したがって、明らかにコントローラーはこのコードに適した場所ではありません(コントローラーコードは軽くてクリーンでなければならないことをどこかで読みました)。ヘルパーにはビューのコードが含まれているため、このスニペットをヘルパーに移動できるとは思いません。繰り返しになりますが、コードは実際にはモデルに関するものではないため、モデルは正しく見えません(またはそうではありませんか?)。
この短いスニペット用に新しいモジュールを作成しますか?今後は、このような鈍い混乱のベストプラクティスや参考資料についても教えていただければ幸いです。私はこれにかなり頻繁に苦労しています!