Извините, если об этом спрашивали раньше, возможно, я искал не те ключевые слова.
Я пытаюсь выполнить цикл .each
для всех строк таблицы базы данных с именем users
, для которых name
равно user1
. Как это сделать?
В моей модели Пользователь есть таблица БД: пользователи, которая содержит следующие столбцы: name | title | details | amount
На мой взгляд, у меня это:
<div style="width:50%;float:left">
<h3>User1</h3>
<% @User1.each do |i| %>
<p><%= i.title %></p>
<p><%= i.details %></p>
<p>$<%= i.amount %></p>
<% end %>
</div>
<div style="width:50%;float:left">
<h3>User2</h3>
<% @User2.each do |i| %>
<p><%= i.title %></p>
<p><%= i.details %></p>
<p>$<%= i.amount %></p>
<% end %>
</div>
Для моего контроллера у меня это есть, но выдает ошибку:
@items = User.all
@User1 = @items.where(name: 'user1')
@User2 = @items.where(name: 'user2')
2 ответа
Чтобы перебрать массив пользователей, соответствующих тем, что в данном списке, используйте
В вашем контроллере:
@users = User.where(name: list_of_names)
Где list_of_names
- массив строк,
И, на ваш взгляд:
<% @users.each_with_index do |user, idx| %>
<div id="user-<%= idx %>">
<%= user.name %>
<%= user.details %>
# etc
</div>
<% end %>
И так далее.
Дополнительную информацию см. В руководствах по Rails.
@user1 = User.where(name: "name1").first
@user2 = User.where(name: "name2").first
Это то, что вы хотите?
Похожие вопросы
Новые вопросы
ruby-on-rails
Ruby on Rails - это полнофункциональная платформа веб-приложений с открытым исходным кодом, написанная на Ruby. Он следует популярной модели фреймворка MVC и известен своим подходом «соглашение поверх конфигурации» при разработке приложений.