【发布时间】:2019-01-17 06:36:05
【问题描述】:
我正在尝试呈现包含指向“产品”页面链接的部分内容,该页面属于某个类别。如果我使用 link_to 方法的数组语法,我能够生成指向产品展示页面的链接,但是在我的表格底部有一个额外的链接可以转到产品索引页面。
我目前正在使用 link_to 方法的数组语法来创建指向产品展示页面的链接。它可以工作,但在表格底部有一个额外的链接指向产品的索引页面。如果不存在产品,则该链接仍然存在于它自己的行中。如果产品确实存在,则链接将位于表格底部的空行中。
部分
<tr>
<td>
<%= product.product_name %>
</td>
<td><%= product.product_description %></td>
<td><%= product.product_price %></td>
<td><%= link_to 'Product page', [@category, product] %></td>
</tr>
景色
<table>
<tr>
<th>Product Name</th>
<th>Product Description</th>
<th>Product Price</th>
</tr>
<%= render @category.products %>
</table>
显示产品控制器的操作
def show
@category = Category.find(params[:category_id])
@product = Product.find(params[:id])
end
产品的展示路线
category_product GET /categories/:category_id/products/:id(.:format) products#show
产品路线截图 output of rake routes | grep product
routes.rb
Rails.application.routes.draw do
root 'pages#index'
get 'pages/admin'
get 'show_customer/:id', to: 'categories#show_customer', as: :show_category_to_customer
resources :categories do
resources :products
end
resources :users
end
我想要一个表,其中仅包含指向产品展示页面的链接,而不是指向产品索引页面的额外链接。我在部分中尝试了 category_product_path(@category, product),但我得到一个 URLGenerationError 说产品 ID 为 nil。
对于如何在不获取额外链接的情况下生成链接的任何帮助,我将不胜感激。
【问题讨论】:
-
你能展示你的部分吗?
-
全部部分添加到答案
标签: ruby-on-rails ruby-on-rails-5