0

現在、変数の考えられるすべての値に対してアクションを作成するのではなく、method_missingを使用してコントローラーでSEOに適したアクションの呼び出しをキャッチしています。必要なのは次のようなURLです。

/ student / BobSmith

/ student / show/342ではありません

method_missingよりもクリーンな解決策はありますか?

ありがとうございました!

4

2 に答える 2

0

キャッチオールルートを作成できます。これをconfig/routes.rbの下部に配置します。必要なコントローラーとアクションを指定します。

map.connect '*path', :controller => '...', :action => '...'

params[:path]ルートのセグメントは、アレイ内のコントローラーで使用できます。

于 2010-06-15T19:17:46.193 に答える
0

その特定のフォーマットのルートをかなり簡単に定義できます。

map.connect "/students/:name", :controller => :students, :action => :show, :requirements => {:name => /[A-Z][A-Z]+/}

次に、showアクションで、params [:name]を使用して名前で検索できます。

于 2010-06-15T19:18:12.447 に答える