我尝试使用mongoDB和sailsJS在多对多关系中创建用户和宠物模型,数据库的创建和加载数据都很好。我在mongoDB中检查了数据库和存在的集合。当我尝试获取用户列表和宠物列表时,它会显示内容,但是当我尝试通过user by his iD下面的iD获取单个宠物时,我得不到结果
它显示“响应不包含任何数据”。
我试着把宠物弄成这样"http://localhost:1337/user/54ffd28e9d9ee93c166c7500/pets/54ffd28e9d9ee93c166c7503“
我也试着用它的名字来显示宠物,而不是iD它也不能工作
我的sails版本是0.11.0..我的操作系统是Win7 64位
发布于 2020-06-18 02:51:31
这里有一件可能有用的事情要知道,当在使用mongoDB的时候通过id请求。
要获取集合中的一些文档,通过URL传递id,使用const { ObjectId } = require('mongodb')是很有用的。
例如,您可以执行以下操作:
// VS code might or might not write this for you
// but if you VIM, you have to write yourself
const { ObjectId } = require('mongodb')
fastify.get('/something/:id', async function (req, reply) {
const db = await this.mongo.db;
await db.collection('YourCollection', callbackFunc);
function callbackFunc(err, col) {
if (err) reply.send(err)
col.findOne({ "_id": new ObjectId(req.params.id) }, (err, result) =>
{
console.log(result)
})
}
})如果有帮助,请告诉我,祝你好运
https://stackoverflow.com/questions/28980333
复制相似问题