2013-02-20 57 views
0

我正在使用Rails 3.2在一個項目中,我需要爲所有控制器創建一個路由。使通用收集路線

現在,路線是:

resources :people do 
    collection do 
    get 'search_for' 
    end 
end 

我需要在應用程序中所有控制器thsi 「搜索內容」 的行動。

謝謝。

回答

1

你可以使用這條路線

match "/:controller/search_for" => redirect("/%{controller}/search_for") 

UPDATE:路由上面將無法正常工作,將導致重定向循環錯誤,只是因爲它使一個301重定向到同一路線。解決方法就是使用

match "/:controller/search_for" 

請務必將所有路由上面這條路線,這樣去表演動作路線將不會覆蓋這樣的路線。

+0

我得到這個錯誤: 「GET HTTP://本地主機:3000/pacientes/procura.json ......」 404(未找到)「 – Beetlejuice 2013-02-20 11:56:41

+0

錯誤的軌道:ActiveRecord :: RecordNotFound(找不到id = search_for的人): – Beetlejuice 2013-02-20 12:01:14

+0

更新了我的回答 – jvnill 2013-02-20 12:09:50

1

簡單地把所有的路線如上:

get ':controller/search_for' 
+0

好吧,它的工作原理是把上面的所有路線 – Beetlejuice 2013-02-20 12:19:48

+0

很高興爲你工作,我也更新了答覆。 – 2013-02-20 12:26:28