No se puede obtener la asociación hasMany
Usé commiteaa1123 (ember) y508479d (ember-data) para construir los archivos JS.
Tengo el siguiente JSON devuelto de mi backend Rails, que se genera conactive_model_serializers (0.6.0):
{
"posts": [
{
"id": 408,
"title": "Lorem Ipsum",
"body": "In at quo tempora provident nemo.",
"comments": [
{
"id": 956,
"body": "Quo incidunt eum dolorem."
},
...
]
}
]
}
y los siguientes modelos de Ember:
App.Post = DS.Model.extend({
title: DS.attr('string'),
body: DS.attr('string'),
comments: DS.hasMany('App.Comment', {
embedded: true
})
});
App.Comment = DS.Model.extend({
body: DS.attr('string'),
post: DS.belongsTo('App.Post')
});
Todo se ve perfectamente normal:
post = App.Post.find(408);
post.get('title')
// => "Lorem Ipsum"
Sin embargo, parece que no puedo llegar a los comentarios:
comments = post.get('comments')
comments.get('firstObject') instanceof App.Comment
// => true
comments.forEach(function(comment) {
console.log(comment.get('body'))
})
//=> undefined
Cuando uso:
comments.content
Obtengo una matriz que contiene objetos, por lo que:
comments.content[0]
//=> { body: "Quo incidunt eum dolorem.", id: 956 }
Pero esto no es lo que esperaba.
Parece tan obvio, así que debo estar haciendo algo mal. Como efecto secundario: actualmente no puedo reproducir mis comentarios en una plantilla de manera fácil, así que espero que alguien pueda ayudarme con esto.
Gracias por adelantado.