LoginSignup
0
2

More than 3 years have passed since last update.

お問い合わせにletter_opener_webを使ってみる

Last updated at Posted at 2020-12-30

今作っているサービスに、お問い合わせ機能を作ることにしました。
letter opnerというgemがあることを知り、なんだか極めて楽そうだと思ったので(途中エラーが出ましたが解決)使ってみることにしました。

色々な記事をみていると、意外と「ここは当たり前にできてますよね」前提で省かれているところが有って(私が気がつかなかっただけ)結構困ったので、自分の備忘録もかねて書いておきます。

環境

ruby 2.6.6
Rails 6.0.3.3

実装

Gemfile
group :development do
   gem 'letter_opener_web'
end

bundle installします。

scaffoldを使って一気に作ります。

$ rails g scaffold Contact name:string email:string content:text

rails db:migrate
します。
ローカル環境で /contacts/newにアクセスすると
スクリーンショット 2020-10-31 12.41.55.png
こんな簡易の入力画面ができていたらまずはOKです。

Action Mailerを作ります。

$ bin/rails g mailer ContactMailer

送信機能の実装をします。

app/mailers/contact_mailer.rb
class ContactMailer < ApplicationMailer
    def contact_mail(contact)
        @contact = contact
        mail to: "自分のメールアドレス",subject: "confirmation"
    end
end

この記事を下書き状態にしてて忘れていました。
もしかしたら何か抜けてるかもしれない。。

いざ、コンタクトフォームから送信すると、
スクリーンショット 2020-12-30 12.25.36.png
このようなメールがちゃんと作れましたよ、という画面に切り替わります。

letter_opnerの送信確認
http://localhost:3000/letter_opener
でアクセスできます。こんな画面が表示されて、送信されたメール内容の通知があればメーラーがちゃんと動いてますよ、ということ。
スクリーンショット 2020-12-30 12.28.04.png

この後本番環境で実装してなかったな!と思い、sendgrid使おうとしたら、sendgridのアドオンを追加しても、ページにアクセスできない問題が。
どうやらsendgridの新規登録をして、ログイン情報を得てからでないと設定ができない模様。(年明け持ち越し確定)

参考にさせていただいた記事

https://papa-programing.jp/rails-contacts-function/
むしろこちらの記事のが親切です、、色々自分が見落としていた部分も!

0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2