我的服务器使用sensorID
作为Sensor
模型的主键。我尝试了以下
App.SensorSerializer = DS.RESTSerializer.extend({
primaryKey: "sensorID"
});
基于我在this test中看到的内容,但它不起作用。我收到了错误:
Error while loading route: Error: No model was found for '0'
我使用自定义适配器。答案是JSONP:
jQuery203041337518650107086_1397489458691([{"sensorID":1,"address":"XXX, YYY","latitude":"nnnn","longitude":"mmmm"...
但是当我检查返回的数据时,它是一个正常的数组:
// App.SensorAdapter
findAll: function(store, type, sinceToken) {
var url = 'http://blahblahblah/?callback=?';
var query = { since: sinceToken };
return new Ember.RSVP.Promise(function(resolve, reject) {
jQuery.getJSON(url, query).then(function(data) {
debugger;
// data.forEach(function(s) {
// s.id = +s.sensorID;
// });
Ember.run(null, resolve, data);
}, function(jqXHR) {
jqXHR.then = null; // tame jQuery's ill mannered promises
Ember.run(null, reject, jqXHR);
});
});
Ember Data 1.0.0-beta.7的正确语法是什么?
答案 0 :(得分:0)
试试这个:
App.Adapter.map('App.Sensor', {
primaryKey: 'sensorID'
});