0

这是 JSON 的示例

{
    "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 返回未定义。

Ember 是 v1.0.0,Ember Data 是 v1.0.0-beta.2

4

1 回答 1

3

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);
}

您可以查看此文档以获取更多信息https://github.com/emberjs/data/blob/master/TRANSITION.md

于 2013-09-21T08:21:12.703 回答