私は次のようにレールルートを設定しています:
match ':controller/:id/:action'
# match 'teams/:id' => "teams#show" # doesn't have any additional effect, which makes sense to me
resources :teams, :only => [:index, :show]
そうすれば私は言うことができ、それはで/teams/cleveland-indians
呼び出すでしょう。よく働く。私の問題は、それが私が望んでいることを完全に実行していないということです。ビュー/チーム/インデックスビューで、次の動作が発生します。teams#show
:id => 'cleveland-indians'
url_for
url_for(:id => "cleveland-indians") # => /teams/cleveland-indians/index
url_for(:id => "cleveland-indians", :action => :show) # => /teams/cleveland-indians/show
もちろん、その2つ目は私が望むように動作しますが/show
、最後に不要なものを取り除きたいと思います。これらのヘルパーがどのように機能するかについてはよくわかりませんがshow
、ルーティングエンジンと同じように、指定されたIDを持つGETのデフォルトのアクションであることがわかっていると思います。とにかく、私がこれを処理するための最良の方法は何ですか?それとも私はそれをすべて間違っているのですか?