Muszę renderować jako Json złożoną strukturę. Mam Dalej Praca strukturę:Rails 4 render json zagnieżdżonych obiektów
render :json => @booking, :include => [:paypal,
:boat_people,
:boat => {:only => :boat_model, :include => {:boat_model => {:only => :name, :include => { :boat_type => {:only => :name}}}}}]
ale nie jestem w stanie dodać atrybut portu z innymi zagnieżdżonych atrybutów: łodzi, takich jak: boat_model (na tym samym poziomie).
UPDATE:
Chociaż its nie pracuje, ja to mój atrybut portu.
render :json => @booking, :include => [:paypal,
:boat_people,
:boat => {:only => [:boat_model => {:include => {:boat_model => {:only => :name, :include => { :boat_type => {:only => :name}}}}},
:port => {:include => :city => {:only => name}}]}]
To znaczy, boat_model i port są atrybutami łodzi.
Jest to obiekt model:
class Boat < ActiveRecord::Base
attr_accessor :price
@price
attr_accessor :extrasPrice
@extrasPrice
def as_json(options = { })
h = super(options)
h[:price] = @price
h[:extrasPrice] = @extrasPrice
h
end
belongs_to :boat_model
belongs_to :port
belongs_to :state
has_many :photos
end
Czy możesz dołączyć to, czego próbujesz, aby dodać Port z jego zagnieżdżonymi atrybutami? Jak wyglądają twoje relacje związane z Portem? –
@Joe Edgar zobacz aktualizację. – Rober