我想有一个链接,只显示最近10个数据库提交,每个提交都有一定数量的表。希望有道理。因此,简而言之,可以点击最近提交的内容'它将通过客户名称,提交日期和ID号显示最后10个。目前在控制器中我有以下只是为了测试链接,但当然它显示每个表。
<h2>LAST 10 SUBMISSIONS</h2>
<%= @posts.each do |post| %>
<%end%>
答案 0 :(得分:0)
您只需按照指定提交时间的某个属性(例如created_on
)对帖子进行排序,并将结果限制为您想要的数字。例如:
Post.order("created_on DESC").limit(10)
这会根据Post
属性返回最后10个created_on
个对象,最新的对象。
答案 1 :(得分:0)
很抱歉,这不仅仅是一个评论,而是一个答案,但我没有足够的代表发表评论。
你可以检索一堆@posts,这将是一个ActiveRecord关系数组。这意味着您可以使用Ruby的漂亮数组方法。这是一个例子:
@sorted_posts = @posts.sort_by { |p| p.created_at }.take(20)
然后传入@sorted_posts,您在上面发布的代码中当前有@posts。但是对于性能和良好实践,您应该从查询本身以适当的格式检索数据。
@last_twenty_posts = Post.order("created_at DESC").limit(20) # limit by whatever number you want
希望有所帮助!