我有一段代码几乎完美,但并不完全。它正在输出一个新闻故事列表,并遵循我创建的customer-> website-> news的关联。
但是我希望通过新闻实体中的“DATE”字段对它们进行排序。目前它以一个看似随机的顺序输出,当我打印出数据时,我所做的任何更改都没有反映出来(你可以在下面的代码中看到我努力添加一个排序,但是从升序/降序改变没有区别)。
<div class="News">
<% @subject.customersAssociation.each do |customer| %>
<% customer.websitesAssociation.each do |website| %>
<% website.newsAssociation.sorted_by(field('DATE')).each do |news| %>
<ul>
<li>..Print data from |customer|... </li>
<li>..Print data from |website|... </li>
<li>..Print data from |news|... </li>
</ul>
<% end %>
<% end %>
<% end %>
答案 0 :(得分:2)
您应该使用order
,如下所示:
website.newsAssociation.order(date: :desc)
您可以指定:asc
代替:desc