🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Ruby on Rails 5

Ruby on Rails 5は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Q&A

解決済

2回答

1824閲覧

devisedeviseのcomfirmable機能を使う際にでたエラー getaddrinfo: Name or service not known

TIshida

総合スコア9

Ruby on Rails 5

Ruby on Rails 5は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

0グッド

0クリップ

投稿2019/10/26 09:50

編集2019/10/26 11:46

前提・実現したいこと

現状;ruby on railsでdevise(gem)をつかってログイン時にGmailで確認する機能を付けようとしています。
参考サイト:https://qiita.com/cigalecigales/items/73d7bd7ec59a001ccd74#%E3%82%A2%E3%82%AB%E3%82%A6%E3%83%B3%E3%83%88%E7%99%BB%E9%8C%B2%E7%A2%BA%E8%AA%8D%E3%83%A1%E3%83%BC%E3%83%AB%E3%82%92%E9%80%81%E3%82%8B

「アカウント登録確認メールを送る」の3. メールが実際に届くようにする
というメール設定のため、development.rbの編集を行った後、表題のエラーが起きました。
エラーを解消し、Gmailでログインの確認を行いたいです。

発生している問題・エラーメッセージ

SocketError in Devise::ConfirmationsController#create
getaddrinfo: Name or service not known
TCPSocket.open address, port(赤線)

該当のソースコード

html

1>>>development.rb 2 #default_url 3 config.action_mailer.default_url_options = { host: '192.168.33.10:3000', port: 3000 } 4 5 #mail_setting 6 config.action_mailer.raise_delivery_errors = true 7 config.action_mailer.delivery_method = :smtp 8 config.action_mailer.smtp_settings = { 9 :address => "smtp@gmail.com", 10 :port => 587, 11 :user_name => "○○@gmail.com", 12 :password => "××", 13 :anthentication => :plain, 14 :enable_starttls_auto => true 15 }

html

1>>>devise.rb 2 # ==> Mailer Configuration 3 # Configure the e-mail address which will be shown in Devise::Mailer, 4 # note that it will be overwritten if you use your own mailer class 5 # with default "from" parameter. 6 config.mailer_sender = '○○@gmail'

試したこと

メールアドレス・パスワードの確認、及びサーバーを再起動
host:をlocalホストに変更後、サーバー再起動
Gmailのセキュリティフィルターは低く設定

補足情報(FW/ツールのバージョンなど)

versionは以下です。
ruby 2.4.1
rails 5.2.3

アドバイスよろしくお願いいたします。
ここにより詳細な情報を記載してください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ご返答ありがとうございます。
おそらくログインする際のパスを使ってましたので、エラーが出たかと思います。

では二段階認証はdeviseでは実装できないという事でしょうか、自分でももう少し調べてみて、
ログイン機能を入れたいた思います。

投稿2019/10/31 03:09

TIshida

総合スコア9

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2019/10/31 04:01

メールの送信ができていないようでしたので、設定に問題があると思い、回答させていただきました。 >>二段階認証はdeviseでは実装できないという事でしょうか 二段階認証自体は実装できると思います。 画面でアカウント登録? → メールを送信 → メール内にあるリンク?からアカウント登録確認
guest

0

ベストアンサー

見当違いなことを言っていたらすみません。

参考サイトを見て気になったのですが、gmailのパスワードはGoogleアカウントの2段階認証の設定をしたアプリケーションパスワードでしょうか?
通常gmailアカウントにログインする際に使用するパスワードではメールの送信が行えかったかと思います。

アプリパスワードの生成

投稿2019/10/28 01:09

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問