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