如何实现下一个和上一个链接及其永久链接

时间:2013-03-14 10:06:02

标签: ruby-on-rails-3 pagination

我有一个简单的博客应用。在我的索引页面上,显示所有帖子。我想要做的是在一个页面上只显示一个帖子,并有下一个和上一个链接。点击下一步时,它应根据创建的日期转到下一篇文章,浏览器中的网址应为实际链接/problems/:id

感谢任何建议的帮助。

由于

1 个答案:

答案 0 :(得分:0)

来自Stack Overflow another question

的回复

如果每个标题都是唯一的,并且您需要按字母顺序排列,请在Post模型中尝试此操作。

def previous_post
  self.class.first(:conditions => ["title < ?", title], :order => "title desc")
end

def next_post
  self.class.first(:conditions => ["title > ?", title], :order => "title asc")
end

然后,您可以链接到视图中的那些。

<%= link_to("Previous Post", @post.previous_post) if @post.previous_post %>
<%= link_to("Next Post", @post.next_post) if @post.next_post %>

未经测试,但它应该让你接近。如果您需要不同的排序顺序,可以将标题更改为任何唯一属性(created_at, id, etc.)