我有兩個model和product類,它們分別具有has_many和belongs_to關聯。現在,我想要做的是當我點擊特定類別時,我希望列出該類別的所有產品。如何做到這一點在Rails 3.1.1中將視圖傳遞給控制器的麻煩
這裏是我的看法
<p><%=link_to @product.category.name, show_by_category_products_path(@product.category.id)%> <%= @product.name%> <%[email protected]%><p>
和方法在控制器
def show_by_category
@products = Product.where("category_id=?", :id)
end
謝謝! (我知道它的簡單的東西,但有時你是盲目的,不能看到一種簡單的方式,所以你必須尋求別人的幫助)
編輯 好吧也許我想出了一種方法來解決這個..但我如果在正確的方式
做我不知道現在我的視圖和模型看起來像這樣
<p><%=link_to @product.category.name, show_by_category_product_path(id: @product.id)%> <%= @product.name%>
def show_by_category
@prod = Product.find(params[:id])
@products = Product.where('category_id=?', @prod.category_id)
end
告訴我,如果這是正確的方式?
那麼問題是什麼?你有錯誤嗎? – pseudopeach
您是否爲自定義操作添加了路線('show_by_category')?它可能應該像「會員」那樣; get:show_by_category;在你的'資源:產品做...結束'塊中結束。 – Frost
是的,我添加了路線。我沒有獲得一系列產品。它的零。 –