我有兩個異步模式:灰燼集只有一個元素,而不是許多
App.Posts = DS.Model.extend({
'content': attr('string'),
'comments': DS.hasMany('comments', {async: true}),
});
App.Comments = DS.Model.extend({
'body': DS.attr('string'),
'postId': DS.belongsTo('posts', {async: true})
});
經由PostController中我試圖通過一個動作的onClick加載評論:
App.PostController = Ember.ArrayController.extend({
loadComments: function(post_id) {
this.store.find('comments', post_id);
}
});
(或許還有)
請求和API響應正確(請參閱下面的API響應),但只顯示一條評論,然後Ember拋出一個錯誤:
TypeError: Cannot read property 'postId' of undefined
在餘燼控制檯>數據選項卡中,註釋模型中有一個註釋,但註釋模型中也有一個註釋元素,註釋屬性設置爲undefined。這可以解釋爲什麼Ember無法讀取屬性postId,因爲它不是註釋。爲什麼Ember將帖子推入評論模型,並且只將一個而不是3個評論推入模型中?
API響應
{
"comments": [
{
"id": 2,
"postId": 31152,
"body": "Lorem ipsum dolor sit amet, consetetur",
},
{
"id": 2,
"postId": 31152,
"body": "asdasd",
},
{
"id": 2,
"postId": 31152,
"body": "asd asd sd",
}
]
}
你可以顯示你的路由器。如果您的評論嵌套在帖子資源中,您必須在您的控制器中指定。 – Stakoov 2014-10-03 12:26:59