0

プロジェクトで Rails 3.2 を使用しており、すべてのコントローラーのルートを作成する必要があります。

今のところ、ルートは次のとおりです。

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

アプリケーション内のすべてのコントローラーに対して、この「search_for」アクションが必要です。

ありがとう。

4

2 に答える 2

1

このルートを使用できます

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

更新: 上記のルートは機能せず、同じルートへの 301 リダイレクトが発生するため、リダイレクト ループ エラーが発生します。解決策は、単に使用することです

match "/:controller/search_for"

このルートをすべてのルートの上に配置して、show アクションに行くルートがこのルートをオーバーライドしないようにしてください。

于 2013-02-20T11:23:09.820 に答える
1

これをすべてのルートの上に置くだけです:

get ':controller/search_for'
于 2013-02-20T12:16:20.947 に答える