質問: RailsのDeviseで複数モデルを使用して管理しています。 1)User 2)Admin どちらも、新規登録時に確認メールが送信されるように設定しています。 Userの場合は、登録したメールアドレスに確認メールを飛ばしたいのですが、 Adminの場合は、特定のメールアドレス(自分)に確認メールを飛ばすように、 切り分けたいと考えています。 確認メールの送信先を切り分けるには、どのように設定すればよろしいでしょうか? よろしくお願いします。
回答: こちら自己解決しました! deviseのメール配信設定をSwitchに変更し、 新たにクラスを作成して、下記のように設定することで、 配信の切り替えを行うことができました! class SwitchMailer < Devise::Mailer def confirmation_instructions(record, token, opts={}) @token = token if record.model_name.name == "Admin" @admin_name = record.admin_name opts = opts.merge default_opts elsif record.model_name.name == "User" @username = record.username end devise_mail(record, :confirmation_instructions, opts) end