пытаюсь добавить маршруты в мое приложение rails, но каждый раз, когда я пытаюсь загрузить индексную страницу, он не возвращает никакого соответствия маршруту. мойнет путевых рельсов маршрута 5
product.rb
belongs_to :category
extend FriendlyId
friendly_id :name, use: [:slugged, :finders]
default_scope { where(active: true) }
end
и вот мой category.rb
has_many :products
extend FriendlyId
friendly_id :name, use: [:slugged, :finders]
и мои маршруты установки как этот
resources :categories
get '/products/:category_id/:id/', to: 'products#show', as: 'product'
resources :products
в моей индексной странице У меня это как это
<%= link_to product, class: "card" do %>
<div class="product-image">
<%= image_tag product.productpic.url if product.productpic? %>
</div>
<div class="product-text">
<h2 class="product-title"> <%= product.name %></h2>
<h3 class="product-price">£<%= product.price %></h3>
</div>
<% end %>
<% end %>
, но когда-либо я загрузить страницу в моем broser я получить
No route matches {:action=>"show", :category_id=>#<Product id: 4, name: "virgin hair", price: #<BigDecimal:7fd0af3ffb10,'0.3E3',9(18)>, created_at: "2016-07-19 12:34:34", updated_at: "2016-07-19 12:41:36", slug: "virgin-hair", productpic: "longhair.jpg", pdescription: "this a brazilian virgin hair", active: true, category_id: 2>, :controller=>"products"} missing required keys: [:id]
что я делаю неправильно здесь, как я начинающий
это, как я должен добавить его? 'get '/ products /: category_id => product.category_id /: id /', to: 'products # show', as: 'product'' –
Просто замените ваш <% = link_to продукт, класс:" card "do% > с этим <% = link_to product (categoty_id: product.category_id, id: product.id), class: "card" do%> –
this breaks and bringa undefined method 'product 'for –