質問をすることでしか得られない、回答やアドバイスがある。

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

新規登録して質問してみよう
ただいま回答率
85.46%
Google API

Googleは多種多様なAPIを提供していて、その多くはウェブ開発者向けのAPIです。それらのAPIは消費者に人気なGoogleのサービス(Google Maps, Google Earth, AdSense, Adwords, Google Apps,YouTube等)に基づいています。

Ruby on Rails

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

Q&A

1回答

984閲覧

RailsでGoogleアカウントによるSNS認証を実装したい

arataku1995

総合スコア5

Google API

Googleは多種多様なAPIを提供していて、その多くはウェブ開発者向けのAPIです。それらのAPIは消費者に人気なGoogleのサービス(Google Maps, Google Earth, AdSense, Adwords, Google Apps,YouTube等)に基づいています。

Ruby on Rails

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

0グッド

1クリップ

投稿2020/02/21 08:25

前提・実現したいこと

個人アプリでGoogleアカウントでのSNS認証を実装しています。
Qiitaの記事を参考にコードを記述後、ローカルで確認するためにrails sを実行したらエラーが発生しました。
何か助言を頂けると助かります。

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

/config/initializers/devise.rb:6:in `block in <top (required)>': undefined method `[]' for nil:NilClass (NoMethodError)

該当のソースコード

rails

1Devise.setup do |config| 2 config.omniauth :goole_oauth2, Rails.application.secrets.google[:client_id], Rails.application.secrets.google[:client_secrets], name: :google,

試したこと

[]のなかのclient_idとclient_secretsの値が取れてないと考えているのですが、どうしたらいいか検討がつきません。
client_idとclient_secretsはsecrets.ymlに記述しております。

rails

1google: 2 client_id: ************googleusercontent.com 3 client_secret: ***********

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

rails 5.0.7.2
devise
omniauth-google-oauth2

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

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

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

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

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

guest

回答1

0

/config/initializers/devise.rb:6:in `block in <top (required)>': #/config/initializers/devise.rbの6行目に undefined method `[]' for nil:NilClass (NoMethodError) #NilClassのnilに`[]' が定義されていません

ということなので、まずは/config/initializers/devise.rbの設定を確認してみてください。
それでもわからなければ上記ソースを追記ください。

投稿2020/02/21 08:51

no1knows

総合スコア3365

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

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

arataku1995

2020/02/21 08:57

回答ありがとうございます。 質問内容に説明不足があり申し訳ありません。 上記該当のソースコードに記載している、cconfigから始まるコードが/config/initializers/devise.rbの6行目になります。 よろしくお願いします。
no1knows

2020/02/21 15:38

google[:client_secrets] ⇒ google[:client_secret]
arataku1995

2020/02/22 01:54

回答ありがとうございます。 ご指摘の箇所を修正し、再度rails sコマンドを実行しましたが、同じエラーが表示されました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.46%

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

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

質問する

関連した質問