gpt4 book ai didi

node.js - NodeJS API : Find a document into a collection by "Id" property , 在 Mongodb 中默认不是 "_id"

转载 作者:太空宇宙 更新时间:2023-11-03 23:14:45 25 4
gpt4 key购买 nike

我想通过模式中的属性“id”检索文档,而不是使用 Mongodb 默认的“_id”。

当我这样请求时,我希望得到回复: https://sample-accounts-api.herokuapp.com/accounts/2

{
attributes: {
id: 2,
user_id: 2,
name: "Bカード",
balance: 200
}
}

这是我的帐户模型:

var AccountSchema = new mongoose.Schema({
id: {type: Number},
user_id: {type: Number, ref: 'User'},
name: String,
balance: Number
});

这是我的 Controller API:

const Account = require('../model/account');
exports.findOne = (req,res) => {
Account
.findById(???)
.then(account => {
if(!account) {
return res.status(404).send({
message: "Account not found with ID "
});
}
res.send(account);
})
.catch(err => {
return res.status(505).send({
message: "Something wrong retrieving account with Id "
});
})
}

最佳答案

    exports.findOne = (req,res) => {
Account
.findOne({'attributes.id':req.params.id})
.then(account => {
if(!account) {
return res.status(404).send({
message: "Account not found with ID "
});
}
res.send(account);
})
.catch(err => {
return res.status(505).send({
message: "Something wrong retrieving account with Id "
});
})
}

使用attributes.id并将其映射到您的req.params.id

关于node.js - NodeJS API : Find a document into a collection by "Id" property , 在 Mongodb 中默认不是 "_id",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56896736/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com