0

次のように URL を要求すると:

http://localhost:3000/password_resets/edit/4RghIKJNygEDswIuuCo

[:id]パラメータ、つまり4RghIKJNygEDswIuuCoを取得していません。

これがルート ファイルです。これに必要な変更はありますか?

ActionController::Routing::Routes.draw do |map|

  match 'primary', :to => 'pages#primary', :as => "primary"
  match 'admins', :to => 'admin_users#list', :as => "admins"

  match 'login', :to => 'user_sessions#new', :as => "login"
  match 'logout', :to => 'user_sessions#destroy', :as => "logout"

  root :to =>"public#index"

  match 'HFA/:id/' => 'public#show'
  match 'HFA/:id/:uid' =>'public#show'
  match 'public/projectview/:projectid/' => 'public#projectview'
  map.connect ':controller/:action/:id.:format'
  map.connect ':controller/:action/:id'

  resources :users
  resources :usertypes
  resources :user_sessions
end
4

3 に答える 3

1

デフォルトは/controller/:id/editで、REST アーキテクチャに従います。

本当にこれを変更しますか?

その場合は、宣言の順序を確認してください。

Rails ルートは指定された順序で照合されるため、get 'photos/poll' の上に resources :photos がある場合、resources 行の show アクションのルートは get 行の前に照合されます。これを修正するには、最初に一致するように get 行を resources 行の上に移動します。

http://guides.rubyonrails.org/routing.html#crud-verbs-and-actions

rake routes次のコマンドで使用可能なルートを確認します。

http://guides.rubyonrails.org/routing.html#inspecting-and-testing-routes

于 2012-10-05T07:50:32.967 に答える
-1

「rake routes」コマンドを実行し、「password_resets/edit/4RghIKJNygEDswIuuCo」のルートを確認します。

于 2012-10-05T06:02:20.633 に答える