ruby 1.9的带极限循环的随机排序



我有这个循环:

<% for post in posts.order_by([:created_at, :desc]).limit(6) %>
  post.name
<% end %>

这很好,但我现在想得到每个帖子的名字,随机顺序和限制6。

我想知道如何与for和每个块一起工作,比如:

posts.each do |post|
 post.name
end
posts.limit(6).shuffle.each do |post|
  post.name
end

我不完全确定你在问什么,但听起来你可以这样做:

<% posts.limit(6).shuffle.each do |post| %>
  <%= post.name %>
  <br>
<% end %>

有关随机化用法的更多详细信息,请参阅Array类的shuffle方法的文档。

最新更新