2017-01-13 6 views
1

登録後に新しいユーザーにメールを送信するように設定しました。今すぐ新しいユーザーに電子メールを送信します。Rails ActionMailer:@userにis_adminがある場合にのみメールを送信

class UserMailer < ActionMailer::Base 
    def welcome_email(user) 
    @user = user 
    mail(to: @user.email, 
     from: "Thinkrtc", 
     subject: "Welcome To Thinkrtc" 
    ) 
    end 
end 

また、ユーザがサインアップできる2番目の方法があります。これにはis_adminブール値があります。したがって、2番目の方法でサインアップすると、is_adminは真のブール値になります。

2番目の方法で新しいアカウントを作成し、is_admin = "true"を取得したユーザーにのみ送信するようにUserMailerを設定します。

+0

'is_admin'はモデル属性ですか?もしそうなら、 '@ user.is_admin'がなければreturnを置くことができます。しかし、私は正しく理解していないと思う... – mrlew

+0

@mrlewそれはスキームにあります:http://image.prntscr.com/image/301a780f7b454277a8453783b1f36d6b.png – Raidspec

+0

電子メールの送信をバイパスしたい場合は、前に言ったように。それですか?または私は誤解した? – mrlew

答えて

-2
class UserMailer < ActionMailer::Base 
    def welcome_email(user) 
    @user = user 
    if @user.is_admin 
     mail(to: @user.email, 
     from: "Thinkrtc", 
     subject: "Welcome To Thinkrtc" 
    ) 
    end 
    end 
end 

これは、ユーザーがis_admin == trueの場合に電子メールを送信します。

+1

これはうまくいき、編集Carlに感謝します。 – Raidspec

関連する問題