0

URL に基づいて情報を表示できるカスタム Rails ルートを作成しようとしています。たとえば、category_ids およびcountryof origin フィールドを持つデータベースに製品があります。そのカテゴリと国に一致するアイテムをリストするために何かを入力できるようにしたいのですが/products/(category_id)/canada、私の試みは(明らかに)失敗しました。

これまで私は試みました

match 'products/:category_id/:country', to: "products#var_show"

そして運がなかった。

シリアルコードを介して製品を表示するルートを作成しようとしましたが、ルートとコントローラーでフィールドを指定したにもかかわらず、Rails は ID を探していると考えているようです。

match 'products/:serial', to: "products#show"

誰かが私を正しい方向に導き、私が間違っていることを教えてもらえますか? ありがとう。

編集:

Railsは、ルートとコントローラーで何を呼び出しても、パラメーター:idを作成するようです

Processing by ProductsController#show as HTML
Parameters: {"id"=>"481598745"}

理想的にはParameters : {"serial" => "481598745"} 、私が尋ねた2番目のケースになります。

4

1 に答える 1

0

これを試して、

match 'products/:category_id/:country' => 'products#show',:as => :show
于 2013-03-14T09:03:40.730 に答える