gpt4 book ai didi

ruby-on-rails - 如何预先加载嵌套的多态关联

转载 作者:行者123 更新时间:2023-12-03 15:52:46 25 4
gpt4 key购买 nike

我正在尝试急切加载嵌套的多态关联。我似乎无法找到解决方案。

这是我的模型设置:

class Post
has_many :comments
end

class Comment
belongs_to :ownable, polymorphic: true
end

class User
has_many :comments, as: :ownable
end

这就是我想要做的:
Post.includes(comments: :ownable).to_a

但它抛出这个错误:
ActiveRecord::EagerLoadPolymorphicError - Can not eagerly load the polymorphic association :ownable

我怎样才能预先加载这个嵌套的多态关联?

最佳答案

首先你的帖子 has_many 评论也应该设置为:as => ownable

    class Post
has_many :comments, as: :ownable
end

即使更改此设置后,您仍然会遇到相同的错误,因为 rails 找不到可拥有的表。

这里发布了一个工作 Eager load polymorphic

关于ruby-on-rails - 如何预先加载嵌套的多态关联,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19290251/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com