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

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

詳細はこちら
Ruby

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

Ruby on Rails

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

コードレビュー

コードレビューは、ソフトウェア開発の一工程で、 ソースコードの検査を行い、開発工程で見過ごされた誤りを検出する事で、 ソフトウェア品質を高めるためのものです。

Q&A

解決済

1回答

662閲覧

エラー Routing Error uninitialized constant StudentUsers

h2_hero_hh

総合スコア2

Ruby

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

Ruby on Rails

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

コードレビュー

コードレビューは、ソフトウェア開発の一工程で、 ソースコードの検査を行い、開発工程で見過ごされた誤りを検出する事で、 ソフトウェア品質を高めるためのものです。

0グッド

0クリップ

投稿2021/03/17 11:48

前提・実現したいこと

・ユーザー管理機能実装
生徒と講師の新規登録画面を作成し、トップページから生徒の新規登録ページに遷移しようした際に以下のエラーメッセージが発生してしまいました。

勉強し始めて、1ヶ月弱ともあり、みなさまのご指導をいただきたいです。
よろしくお願いいたします。

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

Routing Error uninitialized constant StudentUsers

該当のソースコード

Ruby

1app/views/tops/new.html.erb 2 3<div class='main'> 4 <div class='title-contents'> 5 <h2 class='service-title'> 6 いつでも君をサポート 7 </h2> 8 <%= link_to(new_student_user_registration_path, class: 'student-signup-btn') do %> 9 <span class='student-signup-btn-text'>生徒向け新規登録</span> 10 <% end %> 11 <%= link_to(new_teacher_user_registration_path, class: 'teacher-signup-btn') do %> 12 <span class='teacher-signup-btn-text'>先生向け新規登録</span> 13 <% end %> 14 </div> 15</div>

Ruby

1config/routes.rb 2 3Rails.application.routes.draw do 4 devise_for :teacher_users, controllers: { 5 sessions: 'teacher_users/sessions', 6 passwords: 'teacher_users/passwords', 7 registrations: 'teacher_users/registrations' 8 } 9 devise_for :student_users, controllers: { 10 sessions: 'student_users/sessions', 11 passwords: 'student_users/passwords', 12 registrations: 'student_users/registrations' 13 } 14 root to: "tops#index" 15 resources :tops, only: [:index, :new] 16end

試したこと

・記述の間違いがあるかを確認
・Qiita等で調べましたが、参考になるものがなく、解決に至りませんでした

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

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

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

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

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

scivola

2021/03/18 12:25

エラーメッセージは本当に uninitialized constant StudentUsers ですか?
guest

回答1

0

ベストアンサー

devise を使っていないのでよく分からないのですが,

rb

1# config/routes.rb 2 devise_for :student_users, controllers: { 3 sessions: 'student_users/sessions',

とあるので,
app/controllers/student_users/sessions_controller.rb というパスに

rb

1module StudentUsers 2 class SessionsController < Devise::SessionsController

という感じのコントローラークラスが定義されていなければならないのではないでしょうか。
エラーメッセージの「uninitialized constant StudentUsers」は,直接的にはこの StudentUsers モジュールの定義が見つからないということだと思いますが,よくあるのはファイルのパスが間違っているか,定義のほうでスペルミスがあるか,ですね。

投稿2021/03/18 12:43

scivola

総合スコア2108

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.36%

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

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

質問する

関連した質問