僕は発展途上技術者

[rails] delayed_job を使ってメールを送るときは deliver メソッドをつけない

年齢に勝てずもの忘れが激しい。ついこの前はまっていた箇所を忘れて、再度はまってしまった。

なので、忘れないようにブログに書いておく。

delayed_job を使ってメールを送るときには、


UserMailer.delay.comment_created_notification.deliver


でなく


UserMailer.delay.comment_created_notification


のように deliver メソッドをつけない。

結構忘れがちで、今回もはまってしまったのは、開発環境で delayed_job を起動するのが面倒で、デバッグのために一時的に delayed_job をはさまず送りたいというときに、


UserMailer.delay.comment_created_notification





UserMailer.comment_created_notification


と書き換え、deliver を付け忘れたまま、「あれ?あれ?メールが送られないぞ」と悩むパターン。

正しくは、


UserMailer.comment_created_notification.deliver


でないと送られない。

参考: [https://github.com/collectiveidea/delayed_job#rails-3-mailers](https://github.com/collectiveidea/delayed_job#rails-3-mailers)

プロフィール

株式会社まちクエスト代表、つくる社LLC代表。

Scratchで楽しく学ぶ アート&サイエンスRaspberry Piではじめる どきどきプログラミングを書きました。

Amazonから図書館検索 Libron、iPhoneアプリ ひらがなゲーム かなぶん を作っています。

Twitter @jishiha

最近のエントリー

アーカイブ