组原始=真上Sequelize Model.create
我希望能够呼吁Sequelize Model.create
后接受普通原对象,已创建的对象本身,没有元数据或任何其他事情。就像Model.find
中的{raw: true}
选项一样。组原始=真上Sequelize Model.create
我已经看到了这样的回答: Setting all queries to raw = true sequelize, 没有,Model.create({name: 'test'}, {raw: true})
不起作用。
感谢
非常感谢您的帮助。我找到了一个解决方案,虽然这不是我正在寻找的东西,但它有效,而且还很好。
的sequelize实体具有.get()
方法返回普通对象的版本。所以它是这样的:
Model.create(modelObject)
.then((resultEntity) => {
const dataObj = resultEntity.get({plain:true})
}
来自此线程:Sequelize, convert entity to plain object。寻找CharlesA的答案。
未与阵列试过,但检查其意见,并在它旁边,如果您有任何关于结果的排列问题的答案。 但由于.create()
只返回一个对象,它适用于我。无论如何,如果你正在使用.findAll()
,你应该使用{raw: true}
选项,而不是该解决方案,因为它在那个方法。
P.S.如果有人仍然有一个解决方案,Sequelize本身不会返回大resultEntity对象,而只是普通的数据对象,就像{raw: true}
选项(因为我觉得这仍然打火机吗?),我们是开放的。
非常感谢。
您也可以在这是一个从查询返回的模型实例使用.toJSON()。 http://docs.sequelizejs.com/class/lib/model.js~Model.html#instance-method-toJSON
感谢凯文,找到了一个内置的解决方案,并张贴为答案 – Mon
使用'model.toObject'函数:[http://mongoosejs.com/docs/api.html#document_Document-toObject](http://mongoosejs.com/docs/api.html#document_Document-toObject) – alexmac
谢谢alexmac。但这是猫鼬,但我找到了一个类似的方法''model.get',我发布了答案。 thnx – Mon