0

我有一个酒店模型,在我们的主页上有一个指定部分,它应该在侧边栏中显示最后 10 家酒店,每页分页为 5 个。我已经阅读了一些有关 will_paginate 的文档,并意识到没有像样的方法来限制发送到 will_paginate 的对象数量,因此调用限制不会实现任何目标,因此侧边栏显示了所有酒店,每页分页 5 和下面的代码不能按预期工作。

@nominations = Hotel.where(winner: false).limit(10).paginate(page: params[:page], per_page: 5)

我想知道是否有办法限制显示的页数将分页?所以即使有 5 个页面,每个页面上有 5 个酒店,它也只会显示 2 个页面。因此有效地限制了显示的项目数量。我已经查看了内部和外部窗口参数,但我认为这些对这种情况没有帮助。或者,如果有人有任何其他方法可以实现这一点,我会全力以赴。

哦,是的,我们必须对提名进行分页,因为边栏将远远超出页面上的其他内容,我担心这看起来不太好。

如果您需要更多代码,请大声喊叫。

4

1 回答 1

2

感谢提问限制 will_paginate 中的页数只需将 total_entries 参数传递给 paginate 函数。所以我的代码如下所示:

@nominations = Hotel.where(winner: false).paginate(page: params[:page], per_page: 5, total_entries: 10)
于 2012-12-05T13:56:17.077 回答