Asumamos que tenemos algo así como:asociaciones y colecciones con el rugido
class Company
include Mongoid::Document
has_many :users
field :name, type: String
end
class User
include Mongoid::Document
belongs_to :company
field :name, type: String
end
module CompanyRepresenter
include Roar::Representer::JSON
property :name
end
module UserRepresenter
include Roar::Representer::JSON
property :name
link :self do
user_url
end
end
A continuación, pasamos a hacer algo como esto:
user.extend(UserRepresenter).to_json
y todo es simplemente genial. Pero ¿qué hay de:
User.all.to_json
o:
company.extend(CompanyRepresenter).users.to_json?
o incluso:
company.users.collect{|u| u.extend(UserRepresenter)}.extend(Representable::JSON::Collection).to_json
El resultado es siempre una gran variedad de to_json
entradas normales de MongoId.
La pregunta es ¿cómo consigo algo como Company.all.to_json
para tener Roared JSON incluidos los enlaces y otros datos de serialización adicionales.
¿Cuál es tu pregunta? – shingara
La pregunta es ¿cómo obtengo algo así como Company.all.to_json para tener Roaring json's con los enlaces y todo eso? –