2017-10-07 4 views
0

In meiner Routen-DateiNested Routen falsche Routen zeigen

resources :shops do 
    resources :products 
    end 

Ich habe einen Eintrag wie

 <% @products.each do |p| %> 
     <div class="item"> 
      <p class="text-center"><%= link_to p.name, shop_product_path(p) %></p> 
      <p class="text-center"><strike>Rs.250</strike>&nbsp;<strong>Rs.<%= p.price %></strong></p> 
      <center><%= link_to "Order now", new_product_order_path(p), :class => "btn btn-primary" %></center> 
     </div> 
    <% end %> 

Aber diesen Link hier

<p class="text-center"><%= link_to p.name, shop_product_path(p) %></p> 

Es zu

Punkten
http://localhost:5000/shops/6/products/1 

Aber wie

http://localhost:5000/shops/1/products/6 

sein sollte, was ist der Fehler hier?

+0

Was ist 'p.id' und' p.shop_id'? –

+0

Produkt-ID ist 6 und Shop-ID ist 1 –

+1

Ich denke, Sie müssen beide IDs an die Route Helfer übergeben –

Antwort

0

Wir müssen beide Objekte passieren

<p class="text-center"><%= link_to p.name, shop_product_path(@shop, p) %></p> 

p @product in der Schleife ist.