現在、次のような URL があります。
things?category_id=6&country_id=17
そして、次のような URL が必要です。
/printer_cartridges/united_kingdom
Rails 3に、ルーターのすべてのカテゴリと国をハードコーディングせずに、上記のようにURLを設定する方法はありますfind_by_name
か? これにアプローチする最良の方法は何ですか?
現在、次のような URL があります。
things?category_id=6&country_id=17
そして、次のような URL が必要です。
/printer_cartridges/united_kingdom
Rails 3に、ルーターのすべてのカテゴリと国をハードコーディングせずに、上記のようにURLを設定する方法はありますfind_by_name
か? これにアプローチする最良の方法は何ですか?
match '/:category_slug/:country_slug', :to => 'things#index'
次に、ID の代わりに params[:category_slug] と params[:country_slug] を使用してすべてを検索するようにアクションを更新する必要があります。ナメクジを生成するには、スラッグされたジェムを見てください。
カテゴリモデルにメソッドを追加します
def to_param
"#{category_name.parameterize}/#{location_name.parameterize}"
end
ここで、category_nameとlocation_nameは、名前が保存されている場所を入力する場所です。