Supposons que nous ayons quelque chose comme:Associations et collections avec Roar
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
Ensuite, nous allons à faire quelque chose comme ceci:
user.extend(UserRepresenter).to_json
Et tout est tout simplement génial. Mais que diriez-vous:
User.all.to_json
ou:
company.extend(CompanyRepresenter).users.to_json?
ou même:
company.users.collect{|u| u.extend(UserRepresenter)}.extend(Representable::JSON::Collection).to_json
Le résultat est toujours un tableau de to_json
normales entrées de MongoId.
La question est comment puis-je obtenir quelque chose comme Company.all.to_json
pour avoir Roared JSONs y compris les liens et autres données de sérialisation supplémentaires.
Quelle est votre question? – shingara
La question est comment puis-je obtenir quelque chose comme Company.all.to_json d'avoir Roared json avec les liens et tous. –