ruby-on-rails - Rails - 嵌套包含在事件记录上?

标签 ruby-on-rails rails-activerecord

我有一个我获取的事件列表。 我试图包含与此事件关联的每个用户以及与每个用户关联的每个配置文件。用户会被包含在内,但他们的个人资料不会被包含在内。

我该怎么做

Event.includes(:users [{profile:}])

文档似乎不清楚: http://guides.rubyonrails.org/active_record_querying.html

最佳答案

我相信以下内容应该适合您。

Event.includes(users: :profile)

如果您想包含已包含的关联(我们将其称为 B)的关联(我们将其称为 C),则可以使用上面的语法。但是,如果您还想包含 D(它也是 B 的关联),那么您就需要使用 Rails Guide 中的示例中给出的数组。 .

A.includes(bees: [
  :cees, 
  :dees
])

您可以继续像这样嵌套包含(如果您确实需要的话)。假设 A 也与 Z 关联,C 与 E 和 F 关联。

A.includes({
  bees: [{
    cees: [:ees, :effs]
  }, :dees]
}, :zees)

为了好玩,我们还会说 E 与 J 和 X 关联,D 与 Y 关联。

A.includes({
  bees: [{
      cees: [{
        ees: [:jays, :exes]
      }, :effs]
    },
    {
      dees: :wise
    }
  ]
}, :zees)

关于ruby-on-rails - Rails - 嵌套包含在事件记录上?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24397640/

相关文章:

ruby-on-rails - Mongoid 将一个类嵌入为多个字段

sql - Rails Active Record 相当于带有条件表达式的 SQL

ruby-on-rails - 可以在 Rails/ActiveRecord 中指定带有 NULL 的唯一索引吗?

ruby-on-rails - Rails NoMethod错误: undefined method `name' for "#<RecipeType:0x000055cd000b18a0>":String

ruby-on-rails - 是否可以将 Vaadin 与 Rails 集成???如果是这样,怎么办?

ruby-on-rails - 使用具有声明性授权和 Authlogic 的管理仪表板?

ruby-on-rails - 无法解码下载的字体 glyphicons-halflings-regular.woff2 - Rails,生产

JavaScript 追加 Rails erb 代码

ruby-on-rails - 当某些属性可能被标记为销毁时,对嵌套属性的唯一性进行 rails 验证

ruby-on-rails - 在 Rails 中添加可为空的外键