尝试使用JSON.stringify Ember模型时ID丢失了

时间:2015-04-08 11:23:24

标签: javascript ember.js ember-data

我正在使用下面的代码尝试JSON.stringify()控制器内部路径的模型。它工作,它返回所有模型属性,除了模型的实际ID。我们也可以收到身份证吗?

    var plan = this.get('model');
    var reqBody = JSON.stringify(
                                 {
                                    plan,
                                    token
                                 });

1 个答案:

答案 0 :(得分:10)

您需要将includeId选项传递给toJSON method才能获取JSON中的ID。

var plan = this.get('model');
var reqBody = JSON.stringify({
    plan: plan.toJSON({ includeId: true }),
    token
});

如果你不知道,JSON.stringify()call toJSON()为你(这就是你的情况)。如果您想拨打JSON.stringify()而不是model.toJSON({}),则可以随时覆盖它:

App.Plan = DS.Model.extend({
    toJSON: function() {
        return this._super({ includeId: true });
    }
});

那样JSON.stringify(plan)会给你你想要的东西。