При попытке отправить электронное письмо пользователю для сброса пароля, я получаю сообщение об ошибке тайм-аута выполнения. Другие почтовые функции работают, поэтому я знаю, что настройки конфига верны. Заголовок гласит: «Время ожидания :: Ошибка в пароле resetsController # create»
Вот пароль_ресеты_контроллера:
def create
@user = User.find_by_email(params[:email])
if @user
User.deliver_password_reset_instructions(@user.id)
flash[:notice] = "Instructions to reset your password have been emailed to you. " +
"Please check your email."
redirect_to '/'
else
flash[:notice] = "No user was found with that email address"
render :action => :new
end
end
Вот метод внутри User.rb
def self.deliver_password_reset_instructions(user_id)
user = User.find(user_id)
user.reset_perishable_token!
Emailer.deliver_password_reset_instructions(user)
end
Наконец, вот фактический метод внутри emailer.rb:
default_url_options[:host] = "http://0.0.0.0:3000" #development
def password_reset_instructions(user)
@subject = "Application Password Reset"
@from = 'Notice@myApp.com'
@recipients = user.email
@sent_on = Time.now
@body["edit_password_reset_url"] = edit_password_reset_url(user.perishable_token)
@headers["X-SMTPAPI"] = "{\"category\" : \"Password Recovery\"}"#send grid category header
end
Почему в сообщении об ошибке указано «Пароль», указывающее на тайм-аут :: ошибка