0

我将 will_paginate (3.0.pre2) 与 rails 3.0.0.rc 一起使用。第一页拉得很好,但是当我转到第 2 页时,它什么也没有返回,因为 will_paginate 没有正确设置第 2 页的查询。

控制器:

page = params['page'].blank? ? 1 : params['page']
@posts = Post.paginate_by_sql (['select * from Foo_Table where ids = ?', params[:ids]], :page=>page, :per_page=>50)
@pag_params = {:ids=>params[:ids]}

看法:

<%= will_paginate @posts, :params=>@pag_params %>

第2页的链接是:

http://localhost:3000/posts/search?page=2&ids=1

日志显示 where 子句应显示不正确的 (ids = 'search') (ids = '1')

SELECT * FROM `Foo_Table` WHERE (ids = 'search')

我缺少什么以便可以更正第 2 页的查询?

4

1 回答 1

0

与 will_paginate 的开发人员交谈,发现解决此问题的最佳方法是使用 scoped_by_column_name(...column_value...).paginate(...conditions...)

希望这可以帮助某人。:)

于 2010-10-09T00:26:27.390 回答