Kaminari分页范围问题
在 Kaminari 中,这是有效的:
<%= paginate @posts %>
但是如果我做了类似的事情:
<%= paginate @user.posts %>
我得到了
undefined method `current_page' for #<Class:0x58378e0>
如何解决这个问题?我听说继承资源有帮助,但我不知道如何使用它来修复这个错误。
In Kaminari, this works:
<%= paginate @posts %>
But if I do something like:
<%= paginate @user.posts %>
I get
undefined method `current_page' for #<Class:0x58378e0>
How do I fix this? I heard inherited_resources helped, but I don't know how to use it to fix this bug.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
因为在第一个版本中
@posts
可能是运行类似So Kaminari 返回一个类似数组的对象的结果,这是
paginate
辅助方法所期望的。当您直接调用
@user.posts
时,您实际上只是加载一个普通的旧 ActiveRecord 关联。简短的答案是,您需要让 Kaminari 生成您实际上使用
paginate
辅助方法使用的变量Because in the first version
@posts
was probably the result of running something likeSo Kaminari returned an array like object, which
paginate
helper method expects.When you call
@user.posts
directly you are in fact just loading a plain old ActiveRecord association.The short answer is that you need to let Kaminari generate the variable you are in fact using with the
paginate
helper method