Как я могу отобразить конкретный продукт? - PullRequest
0 голосов
/ 28 мая 2019

Я пытаюсь отобразить конкретный продукт, щелкнув по нему из списка

<ul>
    <% products.each do |product| %>
    <tr>

        <a href="<%= products_path(@product) %>"><%= product.title %> .   </a>
        <br/>

    </tr>
    <% end %>
</ul>

Ожидаемые результаты должны быть products/1, но результат products.1 и должен отображать список продуктов

Ответы [ 4 ]

2 голосов
/ 28 мая 2019

Вместо этого

 <a href="<%= products_path(@product) %>"><%= product.title %> .   </a>

Использовать рельсы стандартным способом

<%= link_to product.title, product_path(product)  %>
0 голосов
/ 28 мая 2019

Если ваши маршруты использовали ресурсы: продукты , то вы можете просто использовать

Нет необходимости использовать какой-либо путь.Просто зайдите с объектом Product.

Примечание: В контроллере метод должен вызываться "show".

0 голосов
/ 28 мая 2019

Если вы хотите сделать это вместо

<ul>
    <% products.each do |product| %>
    <tr>

        <a href="<%= products_path(@product) %>"><%= product.title %> .   </a>
        <br/>

    </tr>
    <% end %>
</ul>

попробовать

<ul>
    <% products.each do |product| %>
    <tr>

        <a href="/products/#{product.id}"><%= product.title %></a>
        <br/>

    </tr>
    <% end %>
</ul>

но в рельсах вы можете сделать

<ul>
    <% products.each do |product| %>
    <tr>

        <%= link_to product.title, product_path(product) %>

        <br/>

    </tr>
    <% end %>
</ul>

или

<ul>
        <% products.each do |product| %>
        <tr>

            <%= link_to product.title, product %>

            <br/>

        </tr>
        <% end %>
    </ul>

и в маршрутах вы должны указать

resources :products
0 голосов
/ 28 мая 2019

products_path(@product) должно быть products_path(product)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...