rails 發送郵件

app/mailer 文件夾創建mailer.rb文件

class UserMailer < ActionMailer::Base
  default :from => "測試郵件 <此處填寫發件郵箱>"
  def send_email(email, subject)
     mail(to: email, subject: subject)
  end
end

config/intializers 創建setup_mail.rb

發送郵件服務器的配置

# -*- encoding : utf-8 -*-

ActionMailer::Base.smtp_settings = {
    :address              => Settings.email.address,
    :port                 => Settings.email.port,
    :domain               => Settings.email.domain,
    :user_name            => Settings.email.user_name,
    :password             => Settings.email.password,
    :authentication       => Settings.email.authentication,
    :ssl => true,
    :enable_starttls_auto => true
}

ActionMailer::Base.default_url_options = { host: Setting.host }

# development
# ActionMailer::Base.default_url_options[:host] = "localhost:3000"
# ActionMailer::Base.delivery_method = :letter_opener

settings.yml 添加配置

email:
    address: "smtp.qq.com"
    port: 25
    domain: "sinopr.org"
    user_name: "登錄名"
    password: "密碼"
    authentication: "login"
    host: '路徑'
    mail_from: 'xxx@qq.com'

如果是smtp 服務要保證 郵箱開啟了此類服務,部分郵箱開啟此類服務后 會給予授權碼,如果有授權碼,在password 后要填寫此授權碼 。

app/user_mailer 下創建 send_email.html.erb, 里面寫入想要發送的內容。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容