Rails – 嵌套包括活动logging?

我有一个我获取的事件列表。 我试图包含与此事件关联的每个用户以及与每个用户关联的每个configuration文件。 用户被包括但不是他们的configuration文件。

我将如何做到这一点

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

该文件似乎并不清楚: http : //guides.rubyonrails.org/active_record_querying.html

我相信以下应该为你工作。

 Event.includes(users: :profile) 

如果你想包含一个已经包含的关联(我们称之为B)的关联(我们称之为C),你可以使用上面的语法。 但是,如果您想要包含D(也是B的关联),那么您将使用Rails指南中示例中给出的数组。

 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) 

如果有人正在做一个respond_to块来生成嵌套的json,你可以这样做:

 respond_to do |f| f.json do render json: event.to_json(include: {users: {include: :profile} }), status: :ok end end