![](/img/trans.png)
[英]Update multiple documents instance in MongoDb collection with Mongoose. save() is not a function
[英]NodeJS MongoDB question save() function creating empty documents in collection
MongoDB 新手,了解一些基本節點。 遵循 Node、Express 和 MongoDB 的在線教程。 我有一些代碼連接到遠程集群並將文檔推送到集合中。 連接有效,但插入的文檔是空的,因為它只包含自動生成的 id。 這是代碼:
const DB = process.env.DATABASE.replace(
'<PASSWORD>',
process.env.DATABASE_PASSWORD
);
mongoose
.connect(DB, {
useNewUrlParser: true,
useCreateIndex: true,
useFindAndModify: false,
})
.then(() => console.log('DB Connection successful'));
const tourSchema = new mongoose.Schema();
({
name: {
type: String,
required: [true, 'A tour must have a name'],
unique: true,
},
rating: {
type: Number,
default: 4.5,
},
price: {
type: Number,
required: [true, 'A tour must have a price'],
},
});
const Tour = mongoose.model('Tour', tourSchema);
const testTour = new Tour({
name: 'aaaa',
rating: 3.0,
price: 397,
});
testTour
.save()
.then((doc) => {
console.log(doc);
})
.catch((err) => console.log('ERROR:', err));
這是 output:
如果我查看 Compass,我可以看到創建的空文檔,因此連接正常。 實際連接字符串是否有一些不同的查詢字符串參數? 以下是 MongoDB 連接字符串的當前查詢字符串參數(這些是默認值): retryWrites=true&w=majority
知道我在代碼中可能缺少什么嗎?
謝謝!
嘗試改變這個:
const tourSchema = new mongoose.Schema();
({
至:
const tourSchema = new mongoose.Schema({
在第 13 行,您沒有正確定義架構,並且其中沒有定義實體,因為您使用;
關閉架構。 在定義之前。
const DB = process.env.DATABASE.replace(
'<PASSWORD>',
process.env.DATABASE_PASSWORD
);
mongoose
.connect(DB, {
useNewUrlParser: true,
useCreateIndex: true,
useFindAndModify: false,
})
.then(() => console.log('DB Connection successful'));
const tourSchema = new mongoose.Schema()
({
name: {
type: String,
required: [true, 'A tour must have a name'],
unique: true,
},
rating: {
type: Number,
default: 4.5,
},
price: {
type: Number,
required: [true, 'A tour must have a price'],
},
});
const Tour = mongoose.model('Tour', tourSchema);
const testTour = new Tour({
name: 'aaaa',
rating: 3.0,
price: 397,
});
testTour.save()
.then((doc) => {
console.log(doc);
})
.catch((err) => console.log('ERROR:', err));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.