2015-04-15 67 views
3

我試圖顯示一個頁面以顯示當前用戶的所有產品。因此,我在產品視圖下創建了一個新的頁面showall.html.erb。修改URL模式Ruby Rails

我也做了以下內容:

的ProductsController

def showall 
    @products = current_user.products 
end 

路線

resources :products do 
    get :showall 
end 

我知道,因爲嵌套資源的URL模式成爲

/products/:product_id/showall(.:format) 

如何實際擺脫product_id部分以實現/ products/showall以使一個特殊頁面呈現當前用戶的所有產品。

resources :products do 
    collection do 
    get :showall 
    end 
end 

檢查相應documentation

回答

5

如下您應該改變你的路由定義。

希望有幫助!

+0

解決了我的問題,但我面臨'資源未找到'。 :(我有這個鏈接

  • <%= link_to'我的產品',showall_products_path%>
  • 但沒有找到資源:(:(:( – ikanyu

    +0

    您能提供更多關於新錯誤的信息嗎?它來自哪裏?控制器?如果你有堆棧跟蹤 - 這也有幫助 –

    +0

    發現我的問題愚蠢的誰把showall在before_action:set_product,只:[:顯示,:編輯,:更新,:銷燬]感謝您提供的解決方案更早!真的有用! – ikanyu