24422


**やりたいこと**

RailsのDeviseサインアップ時に、登録してくれたユーザのメールアドレスと、特定のメールアドレスにメールを送信するやり方を教えてください。

Deviseで新規登録時に

  1. 登録してくれたユーザのメールアドレス
  2. hogehoge@example.com

の2つにメールが届くようにしたいです。

登録してくれたユーザにはメールを送信できるのですが、特定のメールアドレス、「2」の「hogehoge@example.com」にもメールを送信するやり方がわかりません。どのように設定すれば良いのでしょうか？

宜しくお願い致します。


CC BY-SA 3.0
2016-04-28T07:45:27.353
24419
2016-04-28T08:54:56.847
2016-04-28T08:54:56.847
76
12323
question
ruby-on-rails devise
RailsのDeviseサインアップ時に、特定のメールアドレスにもメールを送信するやり方を教えてください


`Devise::Mailer` を継承したカスタムメーラクラスを作成し、その中で Cc を設定すると良いでしょう。

**config/initializers/devise.rb:**

[code]

    Devise.setup do |config|
      ...
      config.mailer = "MyMailer"
      ...
    end
    
[/code]

**app/mailers/my_mailer.rb:**

(全てのメールにCcを付ける場合)

[code]

    class MyMailer < Devise::Mailer
      default :cc => "hogehoge@example.com"
    end
    
[/code]

(特定のメールにCcを付ける場合)

[code]

    class MyMailer < Devise::Mailer
      def confirmation_instructions(record, token, opts={})
        super(record, token, opts.merge(:cc => "hogehoge@example.com")
      end
    end
    
[/code]

※実際にはハードコーディングせず、別ファイルなどで定義するべきです。

参考:

  * <https://github.com/plataformatec/devise/wiki/How-To:-Use-custom-mailer>
  * <http://railsguides.jp/action_mailer_basics.html>


CC BY-SA 3.0
2016-04-28T08:27:47.043
24422
2016-04-28T08:27:47.043
76
24419
answer