Ruby1.9.3とRails3.2.9の環境でのルーティングではまってしまっているので、御経験のある方、御教示ください。現在、
config/routes.rbに
Sample::Application.routes.draw do
resources :users
resources :tasks
match '/users/login'
match '/users/logout'
match ':controller(/:action(/:id))'
match ':controller(/:action(/:id))(.:format)'
end
を記述して、WEBrickを起動して、
http://localhost:3000/users/login/
を実行すると、このアドレスには移動するのですが、
NoMethodError in Users#show
Showing C:/user/Ruby193/rails/sample/app/views/users/show.html.erb where line #5 raised:
のエラーが出ます。
WEBrickの表示を見てみると、
Started GET "/users/login/" for 127.0.0.1 at 2013-01-22 22:56:06 +0900
Processing by UsersController#show as HTML
Parameters: {"id"=>"login"}
Rendered users/show.html.erb within layouts/users (2.0ms)
Completed 500 Internal Server Error in 5ms
となっていて、/users/login/をGETしているのですが、アクションでshowが呼び出されて、そのIDとして
loginが渡っているように見えます。
現在、users\controller.rbのshowの関数の定義は全てコメントアウトしています。usersコントローラの
def login関数の定義と、app/views/users/login.html.erbも置いているのですが、それらが表示されない状態で原因が分かりかねています。
上記のルーティングの書き方に何か問題があるのでしょうか?
お礼
情報ありがとうございます。 これが原因でした。 助かりました。ありがとうございます。