4
<%= will_paginate(@posts) %> 
# will generate the links like this '<a href="/posts?page=n">a link</a>'

如果我想更改基于/contents等的 href<a href="/contents?page=n">a link</a>怎么办?

似乎没有这个选项,求助!

4

1 回答 1

6

您可能必须编写自己的 LinkRenderer。请参阅博客文章以及 LinkRenderer 的代码

简要地:

environment.rb你需要这样的东西:

WillPaginate::ViewHelpers.pagination_options[:renderer] = 'MyLinkRenderer'

application_helper.rb

class MyLinkRenderer < WillPaginate::LinkRenderer
  def page_link(page, text, attributes = {})
    url = url_for(page) # you should find a better way to do this...
    url.sub!('posts','contents')
    @template.link_to text, url, attributes
  end
end
于 2010-08-09T14:52:04.637 回答