Как правильно отображать много записей таблицы в представлениях - PullRequest
0 голосов
/ 22 апреля 2019

Здесь есть три таблицы с ассоциацией и отношением следующим образом

Категория Таблица является главной таблицей

Таблица продукта относится к таблице категорий, где ее product_id ссылается на категорию (идентификатор)

Продажа таблица относится к таблице Product, где ее sale_id ссылается на идентификатор продукта (id)

Здесь я пытаюсь получить записи на основе их ссылок, где:

просто рассмотрите эти три таблицы как Категорию как основную таблицу, продукт как подстол, а продажи как подстолью под продуктом

1.) Таблица категорий будет зациклена и отобразит все записи в ней.

2.) Таблица продукта должна зациклиться и отобразить свою запись на основе category_id, где она совпадает с идентификатором таблицы категории.

3) таблица продаж должна зациклиться и отобразить свою запись на основе product_id, где она соответствует идентификатору продукта.

просто рассмотрите эти три таблицы как сообщение, комментарий и ответ

def index


    #@categors = Categor.where(:id => '1')
    @categors = Categor.all 
    @prods = Product.where(:categor_id => '1')
    @sals = Sale.where(:product_id => '1')

end

На данный момент я могу успешно отобразить все записи, но не могу выровнять их должным образом.

Категория - главная таблица. Информация о товарах должна быть в категории. информация о продажах должна быть под продуктами.

Просто просмотрите его как сообщение, комментарий и ответ соответственно.

<p id="notice"><%= notice %></p>
  <div>
    <% @categors.each do |categor| %>

        Categorid: <%= categor.id %>
        Category Name: <%= categor.cat_name %>
        Ctaegory Label<%= categor.car_label %>
              </div>
    <% end %><br>



 <% @prods.each do |pr| %>

       Product id: <%= pr.id %>
        Product Name: <%= pr.prod_name %>
    <% end %>
<br>



 <% @sals.each do |s| %>
        sales id: <%= s.id %>
        sales Name: <%= s.sales_name %>
    <% end %>
<br>





<br>

1 Ответ

1 голос
/ 23 апреля 2019

Я не уверен, что понимаю, чего вы здесь пытаетесь достичь, но я собираюсь предположить, что вы пытаетесь отобразить все категории, все продукты в каждой категории и все продажи для каждого продукта.

Существует несколько различных способов структурирования, например, представления в виде дерева или вложенных таблиц и т. Д., И вы должны учитывать, насколько полезной будет страница, когда у вас будет много категорий / продуктов / продаж, но для простоты давайте структурируем их как вложенные списки:

<ul>
<% @categors.each do |categor| %>

  <li><%= categor.cat_name %>

    <ul>
    <% categor.products.each do |pr| %>

      <li><%= pr.prod_name %>

        <ul>
        <% pr.sales.each do |s| %>

          <li><%= s.sales_name %></li>

        <% end %>
        </ul>

      </li>

    <% end %>
    </ul>

  </li>

<% end %>
</ul>

Теперь вы не показали нам, как настроены ваши модели, поэтому я не знаю, правильно ли установлены отношения между ними, но я предполагаю, что да.

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