首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >急切地加载与Kaminara分页的多态关联

急切地加载与Kaminara分页的多态关联
EN

Stack Overflow用户
提问于 2011-05-12 11:40:58
回答 1查看 1.2K关注 0票数 3

我试图在加载多态关联的同时使用Kaminari进行分页:

代码语言:javascript
复制
@news_items = NewsItem.includes(:news_source).not_outdated
.where(:group_id => group_ids).order("created_at DESC").page(params[:page]).per(10)

我收到了错误消息:

ActiveRecord::Pages#dashboard中的EagerLoadPolymorphicError 显示'BLAH BLAH'/dashboard.html.erb,其中第49号行出现:无法急切地加载多态关联:news_source

当我移除Kaminari作用域( .page:page ) .per(10)时,错误就消失了。

有人有什么想法吗?这篇文章建议支持使用多态关联进行急切加载,但是只有当可能作为作用域应用于关系的条件/顺序不引用任何其他表(如果引用了其他表,那么Rails就使用左侧外部联接方法来处理不能处理多态关联的急切加载)。那么: Kaminari是指另一张桌子吗?

如有任何建议,我将不胜感激!

干杯。

EN

回答 1

Stack Overflow用户

发布于 2017-10-19 20:53:42

您应该始终将preload用于多态关联。

这个错误可能发生,因为includes决定在需要查询关联的条件时调用eager_load,并且多态关联仅由preload支持。在文档

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5977389

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档