facebook twitter hatena line email

「Ruby/rails/mail」の版間の差分

提供: 初心者エンジニアの簡易メモ
移動: 案内検索
(サンプルのメール送信=)
(サンプルのメール送信)
行42: 行42:
 
==サンプルのメール送信==
 
==サンプルのメール送信==
 
~/test/emailにブラウザでアクセス
 
~/test/emailにブラウザでアクセス
 +
 +
==gmailの場合は以下のように書き換える==
 +
config/initializers/mail.rb
 +
    address: 'smtp.gmail.com',
 +
    domain: 'gmail.com',
 +
    port: 587,
 +
    user_name: 'ユーザーアカウント名',
 +
    password: 'パス',
 +
    authentication: 'plain',
 +
    enable_starttls_auto: true
  
 
==参考==
 
==参考==
 
https://qiita.com/hirotakasasaki/items/ec2ca5c611ed69b5e85e
 
https://qiita.com/hirotakasasaki/items/ec2ca5c611ed69b5e85e

2018年1月10日 (水) 15:58時点における版

mailを送信するために使ったrailsのライブラリ

ActionMailer

サンプル

config/initializers/mail.rb

ActionMailer::Base.delivery_method = :smtp
ActionMailer::Base.smtp_settings = {
  address: 'smtp.mail.yahoo.co.jp',
  domain: 'yahoo.co.jp',
  port: 587,
  user_name: 'ユーザアカウント',
  password: 'パス',
  authentication: 'plain',
  enable_starttls_auto: true
}

app/mailers/application_mailer.rb

class ApplicationMailer< ActionMailer::Base
  default from: 'hogehoge@yahoo.co.jp'
  layout 'mailer'
  def send_mail_sample()
    mail(
      subject: "テストメールです。",
      to: "to@example.com"
    ) do |format|
      "テストメールです本文"
    end
  end
end

app/controllers/test_controller.rb

class TestController < ApplicationController
  def email
    ApplicationMailer.send_mail_sample().deliver
    render :json => "test"
  end
end

config/routes.rb

get 'test/email'

サンプルのメール送信

~/test/emailにブラウザでアクセス

gmailの場合は以下のように書き換える

config/initializers/mail.rb

   address: 'smtp.gmail.com',
   domain: 'gmail.com',
   port: 587,
   user_name: 'ユーザーアカウント名',
   password: 'パス',
   authentication: 'plain',
   enable_starttls_auto: true

参考

https://qiita.com/hirotakasasaki/items/ec2ca5c611ed69b5e85e