我目前正在开发一个Ruby on Rails博客。我的博客文章显示在主页上,但是,我想一次列出5篇文章,这样我的FrontPage不会永远持续下去,我的博客将更加清晰。限制每页的帖子数 - Ruby on Rails博客
让我知道你是否可以提供帮助。非常感激。
我目前正在开发一个Ruby on Rails博客。我的博客文章显示在主页上,但是,我想一次列出5篇文章,这样我的FrontPage不会永远持续下去,我的博客将更加清晰。限制每页的帖子数 - Ruby on Rails博客
让我知道你是否可以提供帮助。非常感激。
看起来像你需要一个分页的解决方案 - 考虑使用雷或will_paginate(https://github.com/amatsuda/kaminari,https://github.com/mislav/will_paginate/wiki)
如果你需要一个无尽的页面,有关于一个不错的截屏:http://railscasts.com/episodes/114-endless-page
如果我没有理解对,您想要限制主页上的帖子数量。那么你应该像
Model.find(:all, :limit => 5, :order=> 'created_at desc')
如果你不需要它,你可以删除订单。如果你需要做分页看看will_paginate
例如,如果使用will_paginate的分页,你只需要调用PAGINATE方法在行内控制你的查询结束,例如你的控制器内
def index
@blogs = Blog.all.paginate(:page => params[:page], :per_page => 5)
end
从您的角度看,只需简单地说:
will_paginate @blogs
在指定的位置,显示分页。
谢谢。我看着这个,但我总是返回一个未定义的方法'分页'错误。我查看了我的包中是否安装了willpaginate,它似乎在那里。我错过某种路线或什么? – TopChef
你可以把你的代码调用分页方法吗?从你的rails控制台请输入“ActiveRecord :: Base.respond_to?:paginate”without(“),输出应该为真 –
@blah = Post.all.paginate(:page => params [:page],:per_page => 1) – TopChef