Ошибка аутентификации почтовой программы в Rails 3.2 с gmail или SendGrid
Я пытаюсь настроить рассылку из очень простого приложения Rails 3.2. Пробовал Gmail, пробовал SendGrid. Получаю ту же ошибку.
Net::SMTPAuthenticationError in UsersController#create
530-5.5.1 Authentication Required
Вот мой раздел Environment / 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
Я в тупике. Ни одно из предложений, которые я нашел в Интернете, не имеет значения.
3 ответа
Решение
Я понял. Наконец я прибег к удалению вещей и повторной попытке.
Я изменил свое имя пользователя и пароль smtp_settings с:
user_name: ENV["gmailusername"],
password: ENV["gmailpassword"]
в
user_name: "gmailusername",
password: "gmailpassword"
Тем временем драгоценный камень изменил свою реализацию. Теперь вы можете использовать свой ENV
настройки для инициализации ActionMailer
, Я проверил это с dotenv v.0.7.0
, Убедитесь, что вы загружаете переменные среды. Автозагрузка была удалена из драгоценного камня. Читайте здесь.