update rails query left includes active ruby-on-rails rails-activerecord

ruby-on-rails - query - rails update



Rails-Anidado incluye en Active Records? (2)

Creo que lo siguiente debería funcionar para usted.

Event.includes(users: :profile)

Si desea incluir una asociación (la llamaremos C) de una asociación ya incluida (la llamaremos B), usaría la sintaxis anterior. Sin embargo, si también desea incluir D, que también es una asociación de B, es entonces cuando usaría la matriz como se muestra en el ejemplo en la http://guides.rubyonrails.org/active_record_querying.html .

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

Puedes continuar anidando así (si realmente lo necesitas). Diga que A también está asociado con Z, y que C está asociado a E y F.

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

Y para divertirnos, también diremos que E está asociado a J y X, y que D está asociado a Y.

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

Tengo una lista de eventos que busco. Estoy tratando de incluir a todos los usuarios asociados a este evento y a cada perfil asociado a cada usuario. Los usuarios se incluyen pero no sus perfiles.

¿Cómo haría esto?

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

Los documentos no parecen estar claros: http://guides.rubyonrails.org/active_record_querying.html


Si alguien está haciendo un bloque respond_to para generar json anidado, puede hacer algo como:

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