Rails 6: имя хоста не известно: stmp.gmail.com, SocketError - PullRequest
0 голосов
/ 20 ноября 2019

Я пытался отправить приветственную почту тому, кто поет. Но я не могу этого сделать ... Я добавил require 'resolv-replace' в контроллере моего пользователя. Произошла какая-то ошибка, но она была устранена после этой строки.

Контроллер пользователя

 def create
    @user = User.new(set_params)
    if @user.save
      UserNotifierMailer.send_signup_email(@user).deliver
      flash[:success] ="Success"
      redirect_to new_sessions_path
    else
      render 'new'
    end
  end

config / development.rb

Rails.application.configure do
  config.cache_classes = false
  config.eager_load = false
  config.consider_all_requests_local = true
  if Rails.root.join('tmp', 'caching-dev.txt').exist?
    config.action_controller.perform_caching = true
    config.action_controller.enable_fragment_cache_logging = true
    config.cache_store = :memory_store
    config.public_file_server.headers = {
      'Cache-Control' => "public, max-age=#{2.days.to_i}"
    }
  else
    config.action_controller.perform_caching = false
    config.cache_store = :null_store
  end
  config.action_mailer.perform_deliveries = true

  config.active_storage.service = :local

  config.action_mailer.raise_delivery_errors = true

  config.action_mailer.perform_caching = false

  config.active_support.deprecation = :log

  config.active_record.migration_error = :page_load

  config.active_record.verbose_query_logs = true

  config.assets.debug = true

  config.assets.quiet = true

  config.action_mailer.delivery_method = :smtp

  config.file_watcher = ActiveSupport::EventedFileUpdateChecker


  config.action_mailer.smtp_settings = {
    address: "stmp.gmail.com",
    port: 587,
    user_name: "************@gmail.com",
    password: "*******",
    openssl_verify_mode: "none",
    enable_starttls_auto: true,
    authetication: "plain",
  }

  config.action_mailer.default_url_options = { host: "120.0.0.1"  }


end

Application_mailer.rb

class ApplicationMailer < ActionMailer::Base
  default from: '**********@gmail.com' //My gmail username here
  layout 'mailer'
end

Ошибка: SocketError (имя хоста не известно: stmp.gmail.com):

Resolv :: ResolvError: нет адреса для stmp.gmail.com

1 Ответ

1 голос
/ 20 ноября 2019

Есть опечатка. Измените stmp.google.com на smtp.google.com. Это должно работать!

...