简体   繁体   English

MissingSchemaError:尚未为模型“用户,userSchema”注册架构。 使用 mongoose.model(name, schema)

[英]MissingSchemaError: Schema hasn't been registered for model "User, userSchema". Use mongoose.model(name, schema)

hope you're doing well.希望你做得很好。

i'm following a tutorial ( from 2019 ), and i'm facing this error at the moment.我正在学习一个教程(从 2019 年开始),我目前正面临这个错误。

here's the code.这是代码。 ( let me know if you need anything else ) ( 需要帮助请叫我 )

// index.js // // index.js //

const express = require('express');
const app = express();
const dotenv = require('dotenv');
const mongoose = require('mongoose');

dotenv.config({ path: "./config.env"});

// Connect to DB
mongoose.connect(process.env.DB_CONNECT,
    () => console.log('connected to db!')
);


// Middleware
app.use(express.json())

// Import Routes
const authRoute = require('./routes/auth');

// Route middlewares
app.use('/api/user', authRoute);

app.listen(3000, () => console.log('server running'));

// User.js // // 用户.js //

const mongoose = require('mongoose');

const userSchema = new mongoose.Schema({
    name: {
        type: String,
        required: true,
        min: 6,
        max: 255
    },
    email: {
        type: String,
        required: true,
        min: 6,
        max: 255
    },
    password: {
        type: String,
        required: true,
        min: 7,
        max: 1024
    },
    date: {
        type: Date,
        default: Date.now
    }
});

module.exports = mongoose.model('User, userSchema')

// auth.js // // auth.js //

const router = require('express').Router();
const User = require('../model/User')

router.post('/register', (req, res) => {
    const user = new User({
        name: req.body.name,
        email: req.body.email,
        password: req.body.password,
    });
});

module.exports = router;

Thank you in advance.先感谢您。

The Lord be with you and save you all, your families and friends :)主与你同在,拯救你所有人,你的家人和朋友 :)

I think the problem is here:我认为问题出在这里:

mongoose.model('User, userSchema')

you can fix it this way:你可以这样修复它:

mongoose.model('User', userSchema)

so userSchema can define as schema not the name of collection所以 userSchema 可以定义为模式而不是集合的名称

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 throw new mongoose.Error.MissingSchemaError(name) MissingSchemaError: Schema还没有为model“superheros”注册 - throw new mongoose.Error.MissingSchemaError(name) MissingSchemaError: Schema hasn't been registered for model “superheros” Mongoose 收到错误:MissingSchemaError: Schema has not been registered for model - Mongoose getting the error: MissingSchemaError: Schema hasn't been registered for model ZCCADDEDB567ABAE643E15DCF0974E503Z 错误 MissingSchemaError: Schema 尚未为 typescript 中的 model 注册 - Mongoose error MissingSchemaError: Schema hasn't been registered for model in typescript MissingSchemaError:尚未为模型注册架构 - MissingSchemaError: Schema hasn't been registered for model MissingSchemaError:尚未为模型注册架构 - MissingSchemaError: Schema hasn't been registered for model MissingSchemaError:尚未为模型注册架构 - MissingSchemaError: Schema hasn't been registered for model MissingSchemaError:尚未为模型“用户”注册架构 - MissingSchemaError: Schema hasn't been registered for model "User" Node.js, MongoDB 错误 - "message": "Schema 尚未为模型 \\"Category\\" 注册。\\n使用 mongoose.model(name, schema)" - Node.js, MongoDB error - "message": "Schema hasn't been registered for model \"Category\".\nUse mongoose.model(name, schema)" MissingSchemaError:尚未为模型“ Marker”注册架构 - MissingSchemaError: Schema hasn't been registered for model “Marker” MissingSchemaError:尚未使用 execPopulate 为 model 注册架构 - MissingSchemaError: Schema hasn't been registered for model using execPopulate
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM