mongoose .save() 方法不要将数据插入到 MonogoDB



我在控制台中执行这些步骤

  1. 节点
  2. .load app.js
  3. Massage.save((

然后在mongoDB外壳中

  1. 使用测试
  2. db.test.find((

当我检查数据库时,它是空的

const express = require("express");
const app = express();
const port = 3000;
const mongoose = require("mongoose");
mongoose.connect("mongodb://localhost:27017/test", {
useNewUrlParser: true,
useUnifiedTopology: true,
});
const movieSchema = mongoose.Schema({
title: String,
year: Number,
score: Number,
});
// Models
const Movie = new mongoose.model("Movie", movieSchema);
const Massage = new Movie({
title: "The Massage",
year: 1976,
score: 92,
});
app.get("/", (req, res) => {
res.send("ss");
});
app.listen(port, (req, res) => {
console.log(`http://localhost:${port}`);
});

您错过了最重要的部分:

const Massage = await new Movie({
title: "The Massage",
year: 1976,
score: 92,
}).save();

问题是我没有在模型中设置集合

所以不是

const Movie = new mongoose.model("Movie", movieSchema);

应该是

const Movie = new mongoose.model("Movie", movieSchema, collectionName);

当您想从数据库中提取数据时

use database // go to the database u want 
db.collection.find() // extract the data from the collection

最新更新