我在控制台中执行这些步骤
- 节点
- .load app.js
- Massage.save((
然后在mongoDB外壳中
- 使用测试
- 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