Non ho trovato una risposta soddisfacente attraverso la mia ricerca, quindi ho pensato di chiedere qui.Creazione di record figlio in hasMany Relationship with Ember.Js
Attualmente sto utilizzando Ember.Js, Ember-Data e Ember-Firebase-Adapter e sto tentando di creare un'applicazione CRUD che creerà un record padre e quindi i successivi record figlio in detti record padre.
(si noti che DS.Firebase.LiveModel è l'adattatore equivalente Firebase di DS.Model/Ember.Model)
Qui sono i miei modelli, modificati per essere tipi generici Post/commento
App.Post = DS.Firebase.LiveModel.extend({
name: DS.attr('string'),
body: DS.attr('string'),
date: DS.attr('date'),
comments: DS.hasMany('App.Comment', {embedded: 'always'})
});
App.Comment = DS.Firebase.LiveModel.extend({
message: DS.attr('string'),
timestamp: DS.attr('string'),
post: DS.belongsTo('App.Post', {key: "post_id"})
});
(? Se la mia post_id
= post
)
E qui è il mio percorso per la creazione di Comments
:
App.PostsCommentRoute = Ember.Route.extend({
setupController: function(controller) {
controller.set('content', App.Comment.find());
}
});
Ecco il mio controller per il PostsCommentRoute
:
App.PostsCommentController = Ember.ObjectController.extend({
newMessage: null,
newTimestamp: null,
saveComment: function() {
App.Pbp.createRecord({
message: this.get('newMessage'),
timestamp: this.get('newTimestamp')
})
App.store.commit();
this.set('newMessage', null);
this.set('newTimestamp', null);
}
});
credo di mancare il serializzatore? E ho letto diverse cose su addArray
ma le cose che ho provato a collegare non si sono rivelate proficue. Perché i miei commenti sono buoni, tuttavia non sono associati al post in alcun modo nel mio JSON.
C'è un modo per il Comments
creato per trovare il relativo Post_Id
e quindi associare a detto Post
quando viene creato? Quindi il mio JSON Post
ha una matrice di Comment_Ids
che quindi consente loro di essere visualizzati con il post?
Qualsiasi aiuto o collegamento con buoni esempi sarebbe molto apprezzato. So che questo è un dilemma relativamente semplice eppure Sono stato bloccato su di esso per qualche tempo: p