[英]How to show data order by created_at in index.html.erb in rails instead of updated_at ?
我有點不好意思,我無法弄清楚這一點,但是index.html.erb顯示了updated_at的一些數據順序,而我想按created_at的順序顯示它,頂部是最新的。 我怎樣才能做到這一點 ?
我的index.html.erb是標准的
<% @products do |product| %>
<%= product.name %>
<%= link_to 'Edit', edit_product_path(@product) %>
<% end %>
根據定義@products的方式,還可以使用訂單,如下所示:
Product.order('created_at DESC')
這將顯示所有產品,並按created_at降序排序。
但是,例如,如果您使用Product.all.order('created_at DESC'),它將無法正常工作,因為.all將結果轉換為數組。 在這種情況下,您需要使用sort_by,如其他建議的那樣。
只要您不在陣列上使用Order,它就可以在您的模型中使用。
寫在你的控制器
@products = @products.sort_by {|obj| obj.created_at }.reverse
我認為這應該可以解決您的問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.