我需要匹配导致不匹配的复杂路由,这些是我的路由文件条目。复杂的路由问题Rails 3
match 'households/:id/edit'=>'households#edit', :via=>:get, :as=>:edit_household, :id=>/\d{1,5}/
match 'households/:id' => 'households#update', :via => :put
match 'households/:id' => 'households#destroy', :via=>:delete
match 'households/:city_code-:region_code'=>'households#index', :via=>:get, :as=>:households, :city_code=>/[A-Z]{3,5}/, :region_code=>/[A-Z]{0,3}\d{0,5}/
match 'households/:city_code-:region_code-:h_uid'=>'households#show', :via=>:get, :as=>:household, :city_code=>/[A-Z]{3,5}/, :region_code=>/[A-Z]{0,3}\d{0,5}/
现在的问题是,请求
http://0.0.0.0:3000/households/9/edit
被路由到显示控制器和误差产生
路由错误
No route matches {:controller=>"households", :action=>"show", :format=>nil, :city_code=>#<Household id: 9, uid: "0004", house_no: "House No 12", street: "Street 512", address: "Lorem ipsum dolor sit amet, consectetur adipisicing...", region_id: 3, created_at: "2012-01-05 11:06:32", updated_at: "2012-01-05 11:06:32">}
任何一个可以帮助我在里面?
您确定该网址是路由到show controller,而不是编辑页面上的某些内容试图(但失败)生成链接到显示页面? – 2012-01-05 11:50:45
是的,我确定,当我在浏览器中输入直接编辑网址时,它来到'没有路由匹配错误',错误的时候你可以看到'show'动作被描述。 – 2012-01-05 11:52:57
在development.log中是否有回溯? – 2012-01-05 12:35:04