Как мне отсортировать результат моего цикла for в ruby ​​on rails - PullRequest
1 голос
/ 20 апреля 2010

У меня есть цикл следующим образом:

<% for email in @campaign.emails%>
    <strong>Email: </strong><%=h email.title %> sent after <%=h email.days %> days </br>
<% end %>

Но на самом деле я хочу, чтобы он сортировался по значению email.days при отображении на экране.

Как мне это сделать?

Ответы [ 2 ]

3 голосов
/ 20 апреля 2010

Вы можете отсортировать электронные письма, прежде чем отображать их как:

<%
    sortedEmails = @campaign.emails.sort { |a, b| a.days <=> b.days }
    for email in sortedEmails
%>
...
<% end %>
0 голосов
/ 20 апреля 2010

Если вы используете ActiveRecord, вы можете сделать что-то вроде

<% for email in @campaign.emails.all(:order => "days") %>

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