我正在尝试创建一个自定义rails路由,允许我根据url显示信息。例如,我的产品位于包含category_id
和country
源字段的数据库中。我希望能够输入类似/products/(category_id)/canada
之类的内容来列出与该类别和国家匹配的项目,但我的尝试(显然)不成功。
到目前为止,我已经尝试了
match 'products/:category_id/:country', to: "products#var_show"
并且没有运气。
我甚至只是尝试通过串行代码制作显示产品的路线,但是轨道似乎认为我正在寻找id,即使我已经在路线和控制器中指定了字段。 / p>
match 'products/:serial', to: "products#show"
有人可以引导我朝着正确的方向前进并向我展示我做错了什么吗?感谢。
修改
Rails似乎生成参数:id,无论我在路由和控制器中调用它
Processing by ProductsController#show as HTML
Parameters: {"id"=>"481598745"}
理想情况下,在我询问的第二个案例中,这将是Parameters : {"serial" => "481598745"}
。
答案 0 :(得分:0)
试试这个,
match 'products/:category_id/:country' => 'products#show',:as => :show