尝试 JSON.stringify Ember 模型时 ID 丢失
Id is lost while trying to JSON.stringify Ember model
我正在尝试使用以下代码 JSON.stringify()
控制器内部的路由模型。它有效并且 returns 所有模型属性,模型的实际 ID 除外。我们也可以收到id吗?
var plan = this.get('model');
var reqBody = JSON.stringify(
{
plan,
token
});
您需要将 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)
会给你想要的东西。
我正在尝试使用以下代码 JSON.stringify()
控制器内部的路由模型。它有效并且 returns 所有模型属性,模型的实际 ID 除外。我们也可以收到id吗?
var plan = this.get('model');
var reqBody = JSON.stringify(
{
plan,
token
});
您需要将 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)
会给你想要的东西。