我有以下代码:
User.forge(req.body)
.save()
.then((model) => {
model.id = undefined;
console.log(JSON.stringify({data: model}));
res.json({data: model})
})
将其打印到控制台中:
{"data":{"name":"Test User","username":"test_usr","role_id":1,"id":54}}
为什么即使在Promise.then
上也不会改变 model.id 的值?
您触摸id
只是一个方便的属性 - 无论实际模型 id 属性名称如何,它始终被命名为 id
。字符串化使用的模型属性取自模型中的attributes
对象。
所以你可以只做model.attributes.id = undefined
,但不建议使用这种方法,因为它依赖于书架内部。
正确的方法是改用model.set('id', undefined)
。