0

Rails 3のActionMailerに慣れるために、このrailscastをフォローしていますが、電子メールを配信することができません。

私の問題は私のsetup_mail.rbファイルにあるのではないかと思っていますが、誰かがここで問題を見つけることができますか?Gmailアカウントjbdyno@gmail.comから送信するメールを取得しようとしています

ActionMailer::Base.smtp_settings = {
  :address              => "smtp.gmail.com",
  :port                 => 587,
  :domain               => "gmail.com",
  :user_name            => "jbdyno",
  :password             => "I PUT MY PASSWORD HERE",
  :authentication       => "plain",
  :enable_starttls_auto => true
}

その他のファイル

user_mailer.rb

class UserMailer < ActionMailer::Base
  default from: "jbdyno@gmail.com"

  def registration_confirmation(user)
    mail(:to => user.email, :subject => "Registered")
  end

end

Registration_confirmation.text.erb

Thanks for registering!

users_controller.rb

  def create
    @user = User.new(params[:user])

    respond_to do |format|
      if @user.save
        UserMailer.registration_confirmation(@user).deliver
        format.html { redirect_to @user, notice: 'User was successfully created.' }
        format.json { render json: @user, status: :created, location: @user }
      else
        format.html { render action: "new" }
        format.json { render json: @user.errors, status: :unprocessable_entity }
      end
    end
  end

ありがとう!!!

4

1 に答える 1

1

電子メールを送信しようとしている環境の構成で、追加する必要がある場合がありますconfig.action_mailer.delivery_method = :smtp

gmail を使用した構成の完全な例については、ActionMailer (Setup with Gmail) の Rails ガイドを参照してください。

構成ファイルを変更した後は、必ず開発サーバーを再起動してください。

于 2012-12-03T21:56:23.623 に答える