Я пытаюсь обновить приложение Rails 2 до Rails 3, и у меня действительно возникают проблемы с маршрутом.Вот что у меня есть в файле rout.rb
get 'profile/:login' => 'account#profile', :as => :profile
Когда я перехожу на http://localhost:3000/profile/MyUsername,, он неправильно добавляет: войти в хэш params.Смотрите здесь:
Started GET "/profile/MyUsername?foo=bar" for 127.0.0.1 at Tue Mar 20 21:39:03 -0400 2012
Processing by AccountController#profile as HTML
Parameters: {"foo"=>"bar"}
По какой-то причине: логин не является частью обычных параметров.По догадке, я проверил request.env и обнаружил следующее:
action_dispatch.request.path_parameters"=>{:action=>"profile", :controller=>"account", :login=>"MyUsername"}
Я в этой точке совершенно тупик.Я что-то пропустил?Где мне искать дальше, чтобы выяснить, что здесь происходит?
Обновление
Я начал играть с удалением драгоценных камней, и это волшебным образом сработало.Я только что закомментировал драгоценные камни из Gemfile, пока не получил абсолютно минимальный набор, необходимый для загрузки домашней страницы.В этот момент параметры были именно такими, как ожидалось.Затем я добавил несколько камней за раз, чтобы найти причину.Я добавил все обратно и ... теперь это работает.Сумасшедший, но все, что нужно, я думаю.