2017-06-09 17 views
0

私は、次のコードを持っている:変数(当時)(保存本棚に変わりません)

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

それが値を変更していないなぜmodel.idのPromise.thenでも?

答えて

0

あなたが触れているidは便利な属性です - 実際のモデルID属性名に関係なく常にidという名前です。 stringifyによって使用されるモデル属性は、モデル内のattributesオブジェクトから取得されます。

model.attributes.id = undefinedだからこそこの方法はではありません。が推奨されています。これはブックシェルフ内部に依存しているためです。

正しいアプローチは、代わりにmodel.set('id', undefined)を使用することです。

関連する問題