这就是模型的样子
const mongoose = require('mongoose');
const Schema = mongoose.Schema;
const popBookSchema = new Schema({
title: String,
url: String
});
module.exports = mongoose.model('PopBook', popBookSchema);
这就是控制器的样子
exports.addBook = async(req, res) => {
const book = await Book.findOne({title: req.query.book});
const popBook = new PopBook(book);
console.log(book);
console.log(popBook.url);
await popBook.save()
.then(() => {
console.log('successfully saved popular book');
})
.catch((err)=>{
console.log(err);
});
res.send(popBook);
}
现在,conosle.log打印出book和popbook.url,并且我还在控制台中收到“成功保存”消息,但是数据库内部没有任何内容。该集合在数据库中不存在。现在,我使用另一种模型对其进行了测试,并且一切正常。我只是在这里找不到问题。
最佳答案
当您在mongo cli中创建集合时,要与猫鼬连接时,必须在Schema中添加{collection:“ collectionName”},即
new Schema({ title: String, url: String },{collection:"collectionName"});
尝试这个
关于node.js - Mongoose 成功保存了一个文档,但是没有反射(reflect)在数据库中,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51907455/