我使用的是 Ember Data 1.0.0 beta 1。我切换到 beta 2(刚刚发布)。
似乎模型序列化程序(我在其中规范化 id)不再起作用。
我的印象是 normalize 中的参数顺序从 type、prop、hash 更改为 type、hash、prop。
这是迁移指南的建议:
normalize: function (type, property, hash) {
// normalize the `_id`
var json = { id: hash._id };
delete hash._id;
// normalize the underscored properties
for (var prop in hash) {
json[prop.camelize()] = hash[prop];
}
// delegate to any type-specific normalizations
return this._super(type, property, json);
}
beta 2 中的参数顺序现在是(类型、哈希、属性)。因此,标准化的模型在 beta 2 版本中不包含 id。
如果我将参数切换为 type、hash、property,则 id 会被填充,但此时所有其他属性都会变得空空如也。
因此看起来你不能再使用 normalize 来规范化 id 和任何带下划线的属性。