【问题标题】:Rails eager loadingRails 急切加载
【发布时间】:2010-05-24 10:25:39
【问题描述】:

嗨, 我有一个测试模型,它有_很多问题,还有一个问题,它有_很多答案...... 当我使用 :include => [:questions, {:questions => :answers}] 对测试进行查询时,ActiveRecord 会再进行两个查询以获取问题然后获取答案 - 它不会加入它们! !当我使用 :joins ActiveRecord 进行查询时,会进行查询,但稍后当我需要 Test.questions 或 Test.questions.answers ActiveRecord 时会再次进行这两个额外的查询!!!后来,当我在日志中枚举问题或答案时,我看到每个对象的其他查询,但它有缓存标记...

这正常吗?

【问题讨论】:

标签: ruby-on-rails eager-loading


【解决方案1】:

我同意 shteef,当您执行以下操作时会发生什么:

:include => { :questions => :answers }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多