簡體   English   中英

郵件程序未在Rails中發送

[英]Mailer not sending in rails

我想在我的Rails應用程序中發送電子郵件,但是我不知道為什么電子郵件沒有發送到電子郵件目的地,而在我的日志中卻是電子郵件發送。 這是我在environment/development.rb電子郵件發件人設置:

MyApp::Application.configure do

  config.cache_classes = false
  config.eager_load = false

  config.consider_all_requests_local       = true
  config.action_controller.perform_caching = false

  config.action_mailer.raise_delivery_errors = false    
  config.active_support.deprecation = :log
  config.active_record.migration_error = :page_load

  config.assets.debug = true
  config.action_mailer.perform_deliveries = true
  config.action_mailer.default_url_options = { :host => 'localhost:3000' }
  config.action_mailer.delivery_method = :smtp
  config.action_mailer.smtp_settings = {
    :address              => "smtp.gmail.com",
    :port                 => 587,
    :domain               => 'gmail.com',
    :user_name            => 'my_username',
    :password             => 'my_pass',
    :authentication       => 'plain',
    :enable_starttls_auto => true  }
end

這是我的UserMailer.rb

class UserMailer < ActionMailer::Base  
    def checkout(admin_email, email, ids, store_name)
        @email = email
        @seller = admin_email
        @store_name = store_name
        @orders = []
        @store = Store.where("name = ?", store_name).first

        ids.each do |f|
          @orders << Order.find(f) 
        end   
        mail(:to => "<#{email}>", :from => "<#{admin_email}>", :subject => "checkout confirmation")
      end
end

這是我的控制器中用於發送電子郵件的代碼:

UserMailer.checkout(admin_email, email, ids, store.name).deliver

為什么此電子郵件似乎已發送(根據日志)卻未發送給收件人?

如果您使用的是gmail,請確保您的用戶名字段實際上是:username@gmail.com我遇到了類似的問題,並且一旦更改了用戶名,它就可以正常工作

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM