- 更新日: 2016年11月8日
- Devise
Deviseでユーザー登録完了時にウェルカムメールを送信する
Rails で Devise で認証システムを作っていて、Confirmable モジュールを使っていない場合の話です。新規ユーザーがアカウント登録した時に、Welcome メール的な確認メールを送信する方法。
— 環境 —
rails 5.0.0.1
devise 4.2
【追記 2016/11/08】
Rails 5 + Devise 4.2 の最新環境で正常に動作することを確認しました。
【追記ここまで】
— 記事初回公開時の環境 —
rails-4.0.1
devise-3.2.2
Devise の RegistrationsController#create メソッドをオーバーライド
app/controllers/users/registrations_controller.rb
1 2 3 4 5 6 7 8 9 10 |
class Users::RegistrationsController < Devise::RegistrationsController def create super UserMailer.registration_confirmation(resource).deliver unless resource.invalid? end #... end |
User.create の最後の部分で、UserMailer.registration_confirmation(resource).deliver で確認メールを送信しています。UserMailer#registration_confirmation メソッドは先日作成したもの。
Rails4 の ActionMailer でメール送信 | EasyRamble
Devise コントローラーのカスタマイズ詳細については、以下エントリーを参照。
Rails で Devise のコントローラーをカスタマイズ | EasyRamble
簡単ですね。次の課題は ActionMailer のテストかな。
- Devise の関連記事
- RailsのDevise認証機能での実装チェックリストまとめ
- Deviseで送信されるメールのfrom(送信者メールアドレス)を変更
- Facebook の OAuth 認証で OAuthException(191)エラー
- Rails Devise でパスワードリセットなどのメールテンプレート(Mailer ビュー)をカスタマイズ
- Rails + Devise 環境でのフレンドリーフォワーディング機能を修正
- Rails Devise でユーザーがプロフィール情報を更新後に元のページにリダイレクトさせる
- Devise でユーザーがパスワードなしでアカウント情報を変更するのを許可
- Rails Deviseの日本語化辞書ファイル(devise.ja.yml)
- Rails + Devise で admin ユーザー(管理者)を削除できないようにする
- Devise3.2.2 のデフォルト設定では、Rememberable の remember_token のカラムがないのでソースを解読してみた
- 初回公開日: 2014年6月6日
Leave Your Message!