Как настроить электронные письма с сбросом пароля из gmail с разрешением?

#ruby-on-rails #ruby #clearance

#ruby-on-rails #ruby #Полная распродажа

Вопрос:

Я пытаюсь создать электронное письмо для сброса пароля для отправки из созданной мной учетной записи gmail. Что мне нужно сделать, чтобы выполнить это и отправить электронное письмо с сообщением о сбросе пароля, когда кто-то нажимает «сбросить пароль»? Я уже установил

 config.mailer_sender = 'newemail@email.com'
 

Извините, если это глупый вопрос, я все еще новичок в рельсах и оформлении.

Ответ №1:

Так вы настраиваете конкретный адрес электронной почты для отправки с разрешения. Поместите это в: config/initializers/clearance.rb

 Clearance.configure do |config|
    config.mailer_sender = "reply@example.com"
end
 

Из документов

Но в Rails вам также необходимо настроить сервер для отправки вашей электронной почты. /config/environments/development.rb

 # Gmail configuration
config.action_mailer.raise_delivery_errors = true
config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {
  address:              'smtp.gmail.com',
  port:                 587,
  domain:               'example.com',
  user_name:            ENV['EMAIL_USER'],
  password:             ENV['EMAIL_PASS'],
  authentication:       'plain',
  enable_starttls_auto: true
}
 

Однако обратите внимание на две вещи:

  1. В этом примере используются переменные ENV EMAIL_USER , EMAIL_PASS которые являются настраиваемыми переменными среды, которые должны существовать в вашем сеансе bash (например. $ export EMAIL_USER=my_email@gmail.com )
  2. В этом примере предполагается, что вы делаете это только в процессе разработки (что должно быть верно для отправки из личной учетной записи Gmail). Если вы хотите, чтобы это было в рабочей среде, вам следует добавить конфигурацию в /config/environments/production.rb

Комментарии:

1. Является ли reply@example.com в конфигурации оформления должен быть мой gmail?

2. Да, точно. Пожалуйста, протестируйте это, а затем вернитесь и дайте мне знать, как все прошло. Электронная почта забавная. На самом деле вам разрешено «лгать» о том, кто его отправляет. Итак, технически вы могли бы выбрать заголовок «from» как «anyone@email.com «, но в Клиренсе неясно, позволяют ли они им быть разными. Итак, сначала протестируйте свою учетную запись Gmail. Затем протестируйте другое электронное письмо. В конце дня ваша личная электронная почта все равно будет видна в заголовках писем. Итак, используйте только поддельный адрес при тестировании.