显示数据库项目

时间:2014-04-29 20:47:05

标签: ruby-on-rails ruby

我想有一个链接,只显示最近10个数据库提交,每个提交都有一定数量的表。希望有道理。因此,简而言之,可以点击最近提交的内容'它将通过客户名称,提交日期和ID号显示最后10个。目前在控制器中我有以下只是为了测试链接,但当然它显示每个表。

<h2>LAST 10 SUBMISSIONS</h2>

<%= @posts.each do |post| %>

<%end%>

2 个答案:

答案 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

希望有所帮助!