У меня есть модель «Монета», которая имеет логический параметр «принято».Я хочу сначала отобразить все объекты, которые приняты, после чего следует перерыв, а затем отобразить те, которые не приняты (поэтому я не хочу просто сортировать их и отображать их все).Каков наиболее эффективный способ сделать это?Ниже показано, как это у меня сейчас, но я чувствую, что должен быть лучший способ.
<% @accepted = @coin_events.select { |event| event.accepted == true } %>
<% @pending = @coin_events.select { |event| event.accepted == false } %>
<% @accepted.each do |event| %>
<ul><b>Event: </b><%= event.content %></ul>
<ul><b>Category: </b><%= event.coin.currency_name %></ul>
<ul><b>Link: </b><%= event.link %></ul>
<ul><b>Date: </b><%= event.date.strftime('%a %b %d %Y') if defined?(event.date) %></ul>
<ul><b>Location: </b><%= event.city %>, <%= event.state %>, <%= event.country %></ul>
<ul><b>Description: </b><%= event.description %></ul>
<ul><b>Submitted by: </b><%= event.user.username %></ul>
<% if can? :edit, Coin %>
<ul><b>Accepted: </b><%= event.accepted %></ul>
<% end %>
<div class="btn-group" id="event-buttons">
<% if can? :update, event and @coin.moderator == current_user or current_user.admin? %>
<%= link_to "View Event", coin_event_path(event.coin_id, event.id), class: "btn btn-default" %>
<%= link_to "Edit", edit_coin_event_path(event.coin_id, event.id), class: "btn btn-default" %>
<% end %>
<% if can? :destroy, event and current_user.admin? %>
<%= link_to "Delete", coin_event_path(event.coin_id, event.id), method: :delete, data: { confirm: "Do you want to delete this submission?" }, class: "btn btn-default" %>
<% end %>
</div>
<% end %>
<!-- OTHER STUFF HERE -->
<% @pending.each do |event| %>
<ul><b>Event: </b><%= event.content %></ul>
<ul><b>Category: </b><%= event.coin.currency_name %></ul>
<ul><b>Link: </b><%= event.link %></ul>
<ul><b>Date: </b><%= event.date.strftime('%a %b %d %Y') if defined?(event.date) %></ul>
<ul><b>Location: </b><%= event.city %>, <%= event.state %>, <%= event.country %></ul>
<ul><b>Description: </b><%= event.description %></ul>
<ul><b>Submitted by: </b><%= event.user.username %></ul>
<% if can? :edit, Coin %>
<ul><b>Accepted: </b><%= event.accepted %></ul>
<% end %>
<div class="btn-group" id="event-buttons">
<% if can? :update, event and @coin.moderator == current_user or current_user.admin? %>
<%= link_to "View Event", coin_event_path(event.coin_id, event.id), class: "btn btn-default" %>
<%= link_to "Edit", edit_coin_event_path(event.coin_id, event.id), class: "btn btn-default" %>
<% end %>
<% if can? :destroy, event and current_user.admin? %>
<%= link_to "Delete", coin_event_path(event.coin_id, event.id), method: :delete, data: { confirm: "Do you want to delete this submission?" }, class: "btn btn-default" %>
<% end %>
</div>
<% end %>