我無法從 mongoose 獲取所有資料。當我嘗試獲取資料時,它會創建一個空的新集合名稱(登錄名),但 singin 集合已經存在。
我不明白我在這里做錯了什么
索引.js 檔案
const express = require("express");
const app = express();
const mongoose = require("mongoose");
mongoose
.connect("mongodb://0.0.0.0:27017/signin")
.then(() => console.log("MongoDB Connected"))
.catch((err) => console.log(err));
const User = require("./models/signin");
app.use("/", (req, res) => {
User.find({}, (err, data) => {
if (err) throw new err();
return res.json(data);
});
});
app.listen(5500, () => console.log("Port Started on 5500"));
登入
const mongoose = require("mongoose");
const Schema = mongoose.Schema;
const loginSign = new Schema({
email: { type: String, required: true },
password: { type: String, required: true },
date: { type: Date, default: Date.now },
});
module.exports = Users = mongoose.model("signin", loginSign);
uj5u.com熱心網友回復:
Mongoose 會根據您的模型名稱自動“復數”您的收藏名稱。
創建mongoose.model("signin", loginSign)
一個名為."signins"
來自檔案:https ://mongoosejs.com/docs/models.html#compiling
第一個引數是您的模型所針對的集合的單數名稱。Mongoose 會自動查找您的型號名稱的復數、小寫版本。
提供第三個引數將使用您指定的集合名稱,而不是 mongoose 創建的那個。因此,在您的情況下,您可以:
mongoose.model("signin", loginSign, "signin");
也就是說,擁有多個集合名稱是標準,并且受到鼓勵。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/522314.html
上一篇:運行任何反應專案都會出現以下錯誤