我有下面的路由,它不是嵌套的或名稱空間 - 它是根路由。RoR:具有可選參數的路由使用查詢字符串
get 'discover(/:genre)' => 'home#discover', as: :discover, :genre => /[a-zA-Z0-9-]+/i
工作正常。但調用與下面的路徑給出了一個不正確的URL:
<%= link_to g, discover_path(:genre => g.slug) %>
給人
/discover?genre=house
,工作正常,但我想它作爲/discover/house
。
嘗試了許多:genre => g
的組合,但沒有改變。我錯過了什麼?
更新:
服務器重新啓動和工作原理。路線緩存吧?
你嘗試'discover_path(g.slug)' – apneadiving