3

非常にシンプルなRails3.2アプリからメールを設定しようとしています。Gmailを試し、SendGridを試しました。同じエラーが発生します。

Net::SMTPAuthenticationError in UsersController#create
530-5.5.1 Authentication Required

これがenvironments/development.rbの私のセクションです

# Care if the mailer can't send
config.action_mailer.raise_delivery_errors = true

# Change mail delivery to either :smtp, :sendmail, :file, :test
config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {
  address: "smtp.gmail.com",
  port: 587,
  domain: "signaldesign.net",
  authentication: "plain",
  enable_starttls_auto: true,
  user_name: ENV["gmailusername"],
  password: ENV["gmailpassword"]
}

これが私のusers_controllerです

def create
  @user = User.new(params[:user])
  if @user.save
    UserMailer.signup_confirmation(@user).deliver
    sign_in @user
    flash[:success] = "Welcome!"
    redirect_to @user
  else
    render 'new'
  end
end

私は困惑しています。私がオンラインで見つけた提案はどれも違いを生んでいません。

4

3 に答える 3

4

私はそれを考え出した。私はついに物事を削除して再試行することに頼りました。

smtp_settingsのユーザー名とパスワードを次の場所から変更しました。

user_name: ENV["gmailusername"],
password: ENV["gmailpassword"]

user_name: "gmailusername",
password: "gmailpassword"
于 2012-07-03T14:55:32.283 に答える
1

一方、gemdotenvはその実装を変更しました。これで、設定を使用してENVを初期化できますActionMailer。これをで確認しましたdotenv v.0.7.0。必ず環境変数をロードしてください。自動読み込みがgemから削除されました。ここを読んでください。

于 2013-04-23T13:41:59.767 に答える
0

ドメインを次のように変更してみてくださいlocalhost.localdomain

于 2012-07-03T01:05:55.593 に答える