我的模型定义如下:
App.User = DS.Model.extend({
primaryKey: 'username',
username: DS.attr('string'),
name: DS.attr('string')
});
我的自定义适配器地图:
DS.SocketAdapter.map('App.User', {
primaryKey: 'username',
username: DS.attr('string'),
});
我正在通过在控制台上输入来测试这个模型:
App.User.createRecord({username:"user_1"});
var r = App.User.find("user_1");
console.log( r.serialize() );
>> Object {username: null, name: null ..... all null}
但它返回一个“空”对象。还测试了:
App.User.find({username:"user_1"});
但这是在做一个远程请求。我读到 Ember Data 确实允许您通过 ID 以外的属性查找记录。
那么我在告诉 Ember 数据我的自定义 primaryKey时做错了什么?