2013-01-20 8 views
5

W prowadnicy Ember w modelach http://emberjs.com/guides/models/the-rest-adapter/#toc_relationships widzę związki powinny być podawane jako tablicy ID:Jak uzyskać Railsy do generowania JSON w poprawnym formacie dla ember.js?

{ "POST": { "Uwagi": [1, 2, 3] } }

Mam problem z wypracowaniem sposobu generowania tablicy identyfikatorów w kontrolerze rails. Chociaż mogę: dołączyć skojarzone modele, są one uwzględniane jako tablica skrótów:

{"imię": "Miejsce Jane", "pokoje": [{"id": 1}, {"id ": 2}, {" id ": 3}]}

Jakieś pomysły na to, w jaki sposób można uzyskać tablicę?

Odpowiedz

6

Firma Ember zaleca użycie gem gem active_model_serializers do wygenerowania JSON w kompatybilnym formacie.

Oto przykład z dokumentacji active_model_serializer, aby zrobić dokładnie to, o co prosisz. Kluczem jest embed :ids.

class PostSerializer < ActiveModel::Serializer 
    embed :ids 

    attributes :id, :title, :body 
    has_many :comments 
end 

https://github.com/rails-api/active_model_serializers

+0

Dzięki, właśnie odkrył, że ja po przeczytaniu https://github.com/emberjs /dane. Zainstaluje i wypróbuje active_model_serializers. –

+0

Samo potwierdzenie aktywnych_modeli_serializatorów działa jak czar. –

-1

Alternatywna droga robi to Tworząc odpowiedź przekazać: root => true

respond_to do |format| 
    format.html # index.html.erb 
    format.json { render :json => @posts, :root => true } 
end 
Powiązane problemy