我消耗的数据看起来很像Instagram的User Model Response。它们位于根级别的属性中,而不是位于“数据”对象中的一个级别。进一步使事物变得复杂,存在深层嵌入的对象。
修改
我正在编辑数据以更好地代表我正在使用的实际模型。
{
{
"meta": {
"code": 200
},
"pagination": {
"next_url": "..."
"next_max_id": "..."
},
"data": {
"name": "I'm Making Coffee",
"film_id": "...",
"duration": 55,
"picture": "https://directr.blob.core.windows.net/prints/nb8yr_print_H360.jpg",
"print": {
"print_id": "...",
"url": "...",
"formats": [
"mp4",
"ogg",
"jpg"
],
"sizes": [
{
"width": 960,
"height": 540
},
{
"width": 640,
"height": 360
},
{
"width": 320,
"height": 180
}
]
},
"comments": {
"count": 0,
"data": []
},
"hearts": {
"count": 2,
"data": [
{
"user_id": "55555",
"alias": "jonah"
},
{
"user_id": "66666",
"alias": "eli"
}
]
},
"directrs": {
"count": 1,
"data": [
{
"user_id": "55555",
"name": "jonah",
"picture": "/api/picture.jpg"
}
]
},
}
}
这部电影模型非常深入。数据的根源在数据深度一层。
分页对于传递给不同的控件很有用,而http状态响应我根本不需要或者想要建模。看起来我还需要将“评论”,“心灵”分开,并且当然“打印”到他们自己的模型中并创建关系来绑定它们。
我已经尝试查看源代码了,我无法弄清楚我需要在哪个流程中将JSON切换为我需要的格式...我是否可以指向正确的“根”以Ember的方式对象,或者如果我可以在处理之前修改JSON。
Ember的使命是消除这一切,这是一个很棒的目标。我希望我能找到源代码...... :)感谢您的帮助。
答案 0 :(得分:0)
看一下来自https://github.com/xqiu/MVCSPAWithEmberjs/tree/master/MvcSPAWithEmberjs/Scripts/app的webapi_adapter.js和webapi_serializer.js文件,我为Visual Studio 2012更新2 MVC4 SPA模板的ember.js SPA模板创建了它们。
我必须更改根节点并做其他妥协才能使WebAPI返回的JSON与ember-data兼容。