2011-03-11 13 views
0

私のシステムをopensuse 11.4にアップデートし、RVM経由でRuby 1.9.2をセットアップしました。すべての宝石を再インストールし、問題なくバンドルを更新しました。私も問題を探し始めるためにどこか分からないOSアップデート後のRailsアプリのエラー

ActionController::RoutingError (undefined method `sub' for nil:NilClass): 
app/controllers/application_controller.rb:1:in `<top (required)>' 
app/controllers/news_controller.rb:1:in `<top (required)>' 

問題は、アプリケーションを実行しているときに私が得る曖昧エラーです。 1行目のファイルは両方ともクラス宣言です。つまりNewsControllerクラス< ApplicationControllerとクラスApplicationController < ActionController :: Baseです。いずれのファイルも 'sub'へのメソッド呼び出しを持っておらず、他の情報は与えられていません。

アップグレード前(Rails 3.0.5も使用していました)にアプリケーションが完全に機能していたので、単純な足場で新しいアプリケーションを実行することは問題ありませんが、Railsのどこかに問題があると思います。 news#indexはルートファイル内のルートですが、ルートを何かに変更しても何もしません。

EDIT:

resources :categories,:addresses,:calendars,:topics,:profile,:news,:account_setting 
resources :boards do 
member do 
    get :move 
    post :move_category 
end 
end 


get "user/index" 
get 'login/index' 
get 'login/new' 
post 'login/create' 
post 'login/authenticate' 
get 'login/forgot_password' 
put 'login/reset_password' 

root :to => "news#index" 
+0

してきたなら、あなたのルートがどこかにファイルを投稿することができますか? –

答えて

0

私はそれを引き起こしたのか分からないが、私はそれは、解決しました。

私は新しいアプリケーションを作成し、アプリ、ルート、db、lib、publicにコピーして、問題は消えました。

1

すべてを行う必要はありません。おそらく、このソリューションはずっと簡単だと思います。私はちょうど同じエラーを持っています。私はちょうどmisnamedヘルパーモジュールを持っていたが判明:

module AssetHelper 
    ... 
end 

module AssetsHelper 
    ... 
end