2

ユーザーがジョブを投稿でき、ユーザーがログイン、登録などできるWebサイトを作成しています。ジョブモデルを作成し、ログイン/登録部分のユーザーモデルを作成しました。Railsサーバーをロードしようとすると、以下のエラーが発生し続け、何が間違っているのか、または修正方法がわかりません。私はもともとdeviseを使ってユーザーモデルを作成しようとしていましたが、問題があったのでそのファイルを削除しました。何かを削除したのか、routes.rbファイルに何かが欠けているのか疑問に思っています。誰かが私を助けたり、正しい方向に向けたりできますか?私のroutes.rbファイルも投稿します。私はまだレールに慣れていないので、ガイダンスをありがとう。私がroutes.rbファイルに追加したのは、root:to => "sessions#login"とその下だけでした。モデルとコントローラーを作成したときに、この他の情報が追加されたと確信しています。

/home/whitey7/.rvm/gems/ruby-1.9.3-p194/gems/actionpack-3.2.8/lib/action_dispatch/routing/mapper.rb:181:in `default_controller_and_action':missing:controller(ArgumentError)* **

Routes.rb

Application.routes.draw do 
 get "sessions/login,"
 get "sessions/home,"
 get "sessions/profile,"
 get "sessions/setting"
 get "users/new"

 resources :jobs 



root :to => "jobs#index"
root :to => 'home/index'
 root :to => "sessions#login"
match "signup", :to => "users#new"
match "login", :to => "sessions#login"
match "logout", :to => "sessions#logout"
match "home", :to => "sessions#home"
match "profile", :to => "sessions#profile"
match "setting", :to => "sessions#setting"
4

3 に答える 3

7

routes.rb には無効なルートがまだあると思います。すべてのルート、対応するコントローラー、およびアクションを再確認してください。問題を特定できるように、完全なエラー トレースも共有してください。

于 2012-12-08T18:08:07.877 に答える
1

まず、Railsルーティングのドキュメントを確認してください。ルートファイルを定義できないため、このエラーが発生していると思います。あなたのルートファイルで私が把握している問題は次のとおりです:-

a. ルート ファイルに 3 つの異なるルートがあります。

root :to => "jobs#index"
root :to => 'home/index'
 root :to => "sessions#login"

b. 同じルートを複数回定義しています。

 get "sessions/login,"
 get "sessions/home,"
 get "sessions/profile,"
 get "sessions/setting"
 get "users/new"

match "signup", :to => "users#new"
match "login", :to => "sessions#login"
match "home", :to => "sessions#home"
match "profile", :to => "sessions#profile"
match "setting", :to => "sessions#setting"

解決策は次のようになります:-

a. 最初にルート パスを修正します。ジョブ インデックス、ホーム インデックス、セッション ログインのいずれであっても、ルートにするパス。

b. ルートをそのように定義しようとしていると思います

match "signup", :to => "users#new", via: :get
match "login", :to => "sessions#login", via: :get
match "home", :to => "sessions#home", via: :get
match "profile", :to => "sessions#profile", via: :get
match "setting", :to => "sessions#setting", via: :get
于 2014-03-17T09:39:05.373 に答える