我正在通过使用acts_as_indexed 和will_paginate 来实现搜索功能。我正在使用 Ruby 1.8.7 和 Rails 2.3.11。不,我无法升级 Ruby,因为我使用的是共享主机。
定期使用“分页”方法会产生预期的结果,但是当使用“分页搜索”(acts_as_indexed 分页方法)时,我会得到奇怪的结果:
- 葡萄酒都是从数据库中检索到的(我查看了日志,查询看起来不错)
- 是分页搞砸了,产生了不一致的“每页”结果
假设搜索结果为 3 个对象:
将 per-page 设置为 1,得到 18 页,除了第 4、12 和 18 页之外都没有结果
将 per-page 设置为 2,得到 9 页,除了第 2、6 和 9 页之外,所有页面都没有结果(在这里看到一个模式?)
设置每页到 3,除了第 2、4 和 6 页之外,得到 6 页没有结果
- 以上所有模式每个结果页产生 1 个结果
等等等等......似乎有一些时髦的数学正在发生,但我不知道在哪里或为什么。