У меня возникли проблемы с отображением информации из моей базы данных в Rails. Я могу отображать каждую строку на одной странице, но я не могу ограничить отображение только 5 строками данных. В моем коде статья - это модель с текстовым полем и полем заголовка. Я использую рельсы 4.1.8 и Ruby 2.1.5.Rails: Отображение данных Postgres в представлениях
код я использую:
<% posts = Article.all.order('created_at DESC'%>
<% posts.find_each(batch_size: 5) do |post| %>
<li>Title: <% post.title %></li>
<li>Date: <% post.created_at.strftime("%d %b. %Y") %></li>
<li>Body: <% post.text %></li>
<% end %>
И выход я получаю из него:
<li>Title: </li>
<li>Date: </li>
<li>Body: </li>
<li>Title: </li>
<li>Date: </li>
<li>Body: </li>
Причина есть два набора здесь, потому что я в настоящее время только две статьи в базы данных, которая, по крайней мере, показывает, что к этой базе данных обращаются сюда, но использование post.title фактически не возвращает какой-либо текст.
В рамках обучающей программы, я использовал этот код:
<% @articles.each do |article| %>
<tr>
<td><%= article.title %></td>
<td><%= article.text %></td>
<td><%= article.created_at.strftime("%d %b. %Y") %></td>
<td><%= link_to 'Show', article_path(article) %></td>
<td><%= link_to 'Edit', edit_article_path(article) %></td>
<td><%= link_to 'Destroy', article_path(article),
method: :delete,
data: { confirm: 'Are you sure?' } %></td>
</tr>
Этот код делает именно то, что я ожидал, но, конечно, он отображает каждую строку в базе данных, которая будет подавляющим для большой количество статей.
Надеюсь, это очень простой вопрос, и я просто делаю очевидную ошибку ... Это мой первый раз, когда я использую Ruby или Rails (я делаю это, пытаясь научиться школьному проекту).
Благодарим за помощь!
Это очень полезно знать. –