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

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

新規登録して質問してみよう
ただいま回答率
85.50%
Ruby on Rails 5

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

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Q&A

解決済

1回答

1524閲覧

Railsでアプリケーションを追加しようとすると「NameError in Doorkeeper::AuthorizationsController#new」のエラーが出る

clack02

総合スコア24

Ruby on Rails 5

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

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

0グッド

0クリップ

投稿2018/08/04 04:40

■環境
Windows 10
ruby 2.4.4p296 (2018-03-28 revision 63013) [x64-mingw32]
Rails 5.2.0

■現象
http://nirasan.hatenablog.com/entry/2015/08/20/172719
上記のサイトを見ながら進めています。

「Doorkeeper の認証用キーの作成」の所で、http://localhost:3000/oauth/applications にアクセスし
新しいアプリケーションの作成までは出来たのですが「Authorize」をクリックすると画像のようなエラーが出ます。

イメージ説明

RubyもRailsも、もちろんDoorkeeperも初心者のため、エラー箇所でどのような動作が行わているのかがわかりません。

この問題の解決策と、可能でしたらコードの意味(new_user_session_urlとは何で定義されているのか)を教えていただけるとありがたいです。

どうかご助力お願いします。

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

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

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

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

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

guest

回答1

0

ベストアンサー

http://nirasan.hatenablog.com/entry/2015/08/20/172719

のサイトでは、エラーになっているところは、

ruby

1 User.find_by_id(session[:current_user_id]) || redirect_to(login_url)

となっていますよね。これはDoorkeeperではなくてSorceryの設定だと思います。
上記URLのページにはこの辺が書かれてないような気がしますね…。

Doorkeeperには認証機能がついてないようなので、まずはRails+Sorceryの使い方をマスターして、それから+Doorkeeperの使い方を覚えるのが良いんではないかと思います。

ちなみにnew_user_session_urlというのは、Railsの命名規則的には、UserSessionsControllerというコントローラのnewメソッドに対応するURLを返すものになるかと思います。上記URLのページでは、(書かれてないですが)これにlogin_urlというエイリアスを設定してるように思われます。
詳しくはRailsのルーティングなどをどうぞ。

投稿2018/08/04 08:53

takahashim

総合スコア1877

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

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

clack02

2018/08/04 12:56

回答有り難うございます。 DoorkeeperではなくSorceryなんですね。Rubyも初めての状態でしたので、かなり悪戦苦闘しています・・・ ということはsorcery.rbでlogin_urlを定義するという形になるんでしょうか。
takahashim

2018/08/04 13:02

login_urlを定義するのはconfig/routes.rbの中で、そこで指定するコントローラをSourceryが提供する、というイメージです。 loginじゃなくてlogout_urlを定義する例は、Railsガイドの「Rails のルーティング 3.6 名前付きルーティング」でそのものずばり載ってるので、参考になるかと思います https://railsguides.jp/routing.html#%E5%90%8D%E5%89%8D%E4%BB%98%E3%81%8D%E3%83%AB%E3%83%BC%E3%83%86%E3%82%A3%E3%83%B3%E3%82%B0
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問