Ember.js 未对余烬数据属性进行骆驼化
下面是JSON的一个示例Ember.js 未对余烬数据属性进行骆驼化,ember.js,ember-data,Ember.js,Ember Data,下面是JSON的一个示例 { "users": [ { "id": "10", "email": "test8@test.org", "activated": true, "created_at": "2013-08-25 19:30:16", "username": "Roober" } ] } 这项工作: App.User
{
"users": [
{
"id": "10",
"email": "test8@test.org",
"activated": true,
"created_at": "2013-08-25 19:30:16",
"username": "Roober"
}
]
}
这项工作:
App.User = DS.Model.extend({
username: DS.attr(),
email: DS.attr(),
activated: DS.attr(),
created_at: DS.attr()
});
这并不是:
App.User = DS.Model.extend({
username: DS.attr(),
email: DS.attr(),
activated: DS.attr(),
createdAt: DS.attr()
});
createdAt返回未定义的
余烬是v1.0.0,余烬数据是v1.0.0-beta。2默认情况下,余烬数据beta 1需要服务器的CamelCase响应 但您可以实现normalize方法来改变这一点:
normalize: function(type, hash, property) {
var json = { id: hash.id };
for (var prop in hash) {
json[prop.camelize()] = hash[prop];
}
return this._super(type, json, property);
}
您可以查看此文档以了解更多信息。默认情况下,Ember data beta 1将从您的服务器获得CamelCase响应 但您可以实现normalize方法来改变这一点:
normalize: function(type, hash, property) {
var json = { id: hash.id };
for (var prop in hash) {
json[prop.camelize()] = hash[prop];
}
return this._super(type, json, property);
}
有关详细信息,请参阅本文档。谢谢。这意味着文档在最新版本中是错误的。ActiveModelAdapter和
DS.ActiveModelSerializer
也一直在为我工作。我认为他们一定是在尝试逐步淘汰该特定文档。它在任何菜单中都没有链接,我已经提交了几个拉取请求来更正该页面,尽管它们更新页面以准确反映当前功能,但这些请求数周都没有被接受。谢谢。这意味着文档在最新版本中是错误的。ActiveModelAdapter和DS.ActiveModelSerializer
也一直在为我工作。我认为他们一定是在尝试逐步淘汰该特定文档。它在任何菜单中都没有链接,我已经提交了几个拉取请求来更正该页面,并且这些请求已经好几个星期没有被接受,即使它们更新页面以准确反映当前功能。