findOne 中的 Sequelize 属性返回所有字段
Sequelize attributes in findOne returning all fields
我有
db.User.findOne({
attributes: ['id', 'firstName', 'lastName', 'email', 'phoneNumber', 'createdAt', 'type', 'status'],
where: {
id: id
}
}).then(function(dbUser) {
console.log(dbUser);
});
它返回所有字段,而不仅仅是我在 attributes
中指定的字段。我做错了什么?
db.animals.findOne({ },{_id:0, numlegs:1,class:1, name:1})
returns 仅特定字段。
根据文档,您绝对没有做错任何事。我看到了类似的行为。 Sequelize 似乎正在经历一些成长的烦恼。 :\
提供的代码至少适用于版本 7。
const user = await User.findOne({
attributes : ['id','name','email','contact'],
where: {email:req.body.email}
});
邮递员的回复
{
"status": "success",
"user": {
"id": 1,
"name": "admin",
"email": "admin@eatanddrink.io",
"contact": "0724466628"
},
}
我有
db.User.findOne({
attributes: ['id', 'firstName', 'lastName', 'email', 'phoneNumber', 'createdAt', 'type', 'status'],
where: {
id: id
}
}).then(function(dbUser) {
console.log(dbUser);
});
它返回所有字段,而不仅仅是我在 attributes
中指定的字段。我做错了什么?
db.animals.findOne({ },{_id:0, numlegs:1,class:1, name:1})
returns 仅特定字段。
根据文档,您绝对没有做错任何事。我看到了类似的行为。 Sequelize 似乎正在经历一些成长的烦恼。 :\
提供的代码至少适用于版本 7。
const user = await User.findOne({
attributes : ['id','name','email','contact'],
where: {email:req.body.email}
});
邮递员的回复
{
"status": "success",
"user": {
"id": 1,
"name": "admin",
"email": "admin@eatanddrink.io",
"contact": "0724466628"
},
}