我正在使用ember来做教程。
并尝试将其与rest适配器连接以进入后端。
完全去做应用程序工作,但当我尝试保存模型时,它确实发送到api端点, 它返回新保存模型的Id,但不反映在客户端。
如果我完全重新加载所有数据,它可以工作,但对于单个模型,返回的Id不会更新。
因为我的模型没有" id",它使用的是primaryKey:' Id',它适用于页面重新加载,但是 当保存后服务器响应时,返回的ID数据不会在客户端内更新。
如何更多地调试错误?
好的,我得到了部分解决方案。
我的服务器只返回数据
{
"Id": 4767482418036736,
"title": "asdfas"
}
而不是
todo:{
"Id": 4767482418036736,
"title": "asdfas"
}
但是因为我无法更改我的服务器,所以我会教ember来寻找没有大括号的待办事项?
答案 0 :(得分:0)
您的JSON响应看起来没有正确格式化,请参阅https://github.com/emberjs/data/blob/master/packages/ember-data/tests/integration/adapter/rest_adapter_test.js示例。)
鉴于您无法更改服务器,请查看序列化程序(http://emberjs.com/api/data/classes/DS.RESTSerializer.html)
答案 1 :(得分:0)
我得到了答案,
我需要以这种方式覆盖ExtractSingle序列化程序功能。
extractSingle:(store, type, payload, id)->
payload = { todo : payload }
return this._super(store, type, payload, id);