rails:1059
From: Akimichi Tatsukawa <akimichi_tatsukawa@y...>
Date: Mon, 17 Apr 2006 00:46:33 +0900 (JST)
Subject: [rails:1059] 1.0から1.1.2にアップグレード後のルーティングエラー
立川察理と申します。初めて投稿いたします。
やや長文となっております。
本日、Railsを 1.0 から 1.1.2 にアップグレードしてみました。
ところが、
redirect_to :controller => "/admin/patient"
というようにグループ化されたコントローラにリダイレクトしようとしましたが、
適切にルーティングされなくなりました。
ブラウザでは
Routing Error
Recognition failed for "/admin/patient"
と表示され、
Webrick のターミナルでは、
127.0.0.1 - - [17/Apr/2006:00:26:55 JST] "GET /admin/patient HTTP/1.1" 404 602
http://localhost:3000/account/login -> /admin/patient
となっております。
development.log は次のようになっております。
ActionController::RoutingError (Recognition failed for "/admin/patient"):
/usr/lib/ruby/gems/1.8/gems/actionpack-1.12.1/lib/action_controller/routing.rb:488:in `recognition_failed'
/usr/lib/ruby/gems/1.8/gems/actionpack-1.12.1/lib/action_controller/routing.rb:478:in `recognize!'
/usr/lib/ruby/gems/1.8/gems/rails-1.1.2/lib/dispatcher.rb:38:in `dispatch'
/usr/lib/ruby/gems/1.8/gems/rails-1.1.2/lib/webrick_server.rb:115:in `handle_dispatch'
/usr/lib/ruby/gems/1.8/gems/rails-1.1.2/lib/webrick_server.rb:81:in `service'
/usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service'
/usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run'
/usr/lib/ruby/1.8/webrick/server.rb:172:in `start_thread'
/usr/lib/ruby/1.8/webrick/server.rb:161:in `start'
/usr/lib/ruby/1.8/webrick/server.rb:161:in `start_thread'
/usr/lib/ruby/1.8/webrick/server.rb:95:in `start'
/usr/lib/ruby/1.8/webrick/server.rb:92:in `each'
/usr/lib/ruby/1.8/webrick/server.rb:92:in `start'
/usr/lib/ruby/1.8/webrick/server.rb:82:in `start'
/usr/lib/ruby/1.8/webrick/server.rb:82:in `start'
/usr/lib/ruby/gems/1.8/gems/rails-1.1.2/lib/webrick_server.rb:67:in `dispatch'
/usr/lib/ruby/gems/1.8/gems/rails-1.1.2/lib/commands/servers/webrick.rb:59
/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:21:in `require__'
/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:21:in `require'
/usr/lib/ruby/gems/1.8/gems/activesupport-1.3.1/lib/active_support/dependencies.rb:147:in `require'
/usr/lib/ruby/gems/1.8/gems/rails-1.1.2/lib/commands/server.rb:30
/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:21:in `require__'
/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:21:in `require'
/usr/lib/ruby/gems/1.8/gems/activesupport-1.3.1/lib/active_support/dependencies.rb:147:in `require'
環境は以下の通りです。
ruby 1.8.2
rails 1.1.2
Webrick 1.3.1
debian sarge を使っていて、ruby を 1.8.4 にはアップグレードしておりません。
上記 action_controller/routing.rb:478:in `recognize!' 付近のコードも覗いてみましたが、
実行時に recognize_path というメソッドを生成実行するなど複雑怪奇で
とても理解できませんでした。
英語RailsのMLにて「ディスパッチャーが更新されていないから、
RAILS_ROOTにて rails . を実行して、自分で変更したファイル以外は
上書きするように」というアドバイスがありました。
その通りにしてみましたが、問題は解決されておりませんでした。
なお public/dispatch.rb のタイムスタンプは今日付けになっているので
最新版には更新されているようです。
途方に暮れております。どなたか解決法を御存じないでしょうか。
--
ML: rails@r...
使い方: http://QuickML.com/
-> 1059 2006-04-16 17:46 [akimichi_tatsukawa@y] 1.0から1.1.2にアップグレード後のルーティングエラー 1060 2006-04-16 17:44 ┣[shachi@j... ] 1061 2006-04-16 18:04 ┃┗[akimichi_tatsukawa@y] 1063 2006-04-17 12:13 ┃ ┗[someeda@g... ] 1064 2006-04-17 13:17 ┣[suzk@o... ] 1071 2006-04-21 11:09 ┃┗[akimichi_tatsukawa@y] 1072 2006-04-21 11:18 ┗[akimichi_tatsukawa@y] 1073 2006-04-21 12:37 ┗[suzk@o... ] 1074 2006-04-21 13:46 ┗[akimichi_tatsukawa@y]