“获取错误”;抛出新mongoose.Error.MissingSchemaError(名称);丢失方案错误:“引用;
我在运行应用程序时遇到此错误 我尝试过改变一些东西,但没有任何东西真正起作用,应用程序正在崩溃,无法运行“获取错误”;抛出新mongoose.Error.MissingSchemaError(名称);丢失方案错误:“引用;,mongoose,Mongoose,我在运行应用程序时遇到此错误 我尝试过改变一些东西,但没有任何东西真正起作用,应用程序正在崩溃,无法运行 throw new mongoose.Error.MissingSchemaError(name); ^ MissingSchemaError: Schema hasn't been registered for model "User". Use mongoose.model(name, schema) at new MissingSchemaError (C:\Use
throw new mongoose.Error.MissingSchemaError(name);
^
MissingSchemaError: Schema hasn't been registered for model "User".
Use mongoose.model(name, schema)
at new MissingSchemaError (C:\Users\SMIT\Desktop\project\node_modules\mongoose\lib\error\missingSchema.js:20:11)
at Mongoose.model (C:\Users\SMIT\Desktop\project\node_modules\mongoose\lib\index.js:378:13)
at Object.<anonymous> (C:\Users\SMIT\Desktop\project\model\User.js:21:30)
at Module._compile (module.js:652:30)
at Object.Module._extensions..js (module.js:663:10)
at Module.load (module.js:565:32)
at tryModuleLoad (module.js:505:12)
at Function.Module._load (module.js:497:3)
at Module.require (module.js:596:17)
at require (internal/module.js:11:18)
at Object.<anonymous> (C:\Users\SMIT\Desktop\project\route\api\user.js:4:12)
at Module._compile (module.js:652:30)
at Object.Module._extensions..js (module.js:663:10)
at Module.load (module.js:565:32)
at tryModuleLoad (module.js:505:12)
at Function.Module._load (module.js:497:3)
[nodemon] app crashed - waiting for file changes before starting...
C:\Users\SMIT\Desktop\project\model/User.js
const mongoose=require('mongoose');
const Schema=mongoose.Schema;
//creating schema for users
const UserSchema=new mongoose.Schema({
name:{
type:String,
required:true
},
password:{
type:String,
required:true
},
email:{
type:String,
required:true
}
});
module.exports=user=mongoose.model('User','UserSchema');
C:\Users\SMIT\Desktop\project\route\api\user.js
const express=require('express');
const router=express.Router();
const bcrypt=require('bcryptjs');
const user=require('../../model/User');
router.get('/demo',(req,res)=>res.json({output:"user"}));
//creating route for regsiteration
router.post('/register',(req,res)=>{
//find if email exists or not.
user.findOne({email: req.body.email}).then(user=>{
if(user){
return res.status(400).json({email:"email is already registered"});
}
else{
//else will creaete new user
const newUser=new User({
name: req.body.name,
email:req.body.email,
password:req.body.password
})
//generate salt and hash pass with salt
bcrypt.genSalt(10,()=>{
//hashing password
bcrypt.hash(newuser.password, salt, (err,hash)=>{
if(err)
throw err;
newUser.password=hash;
newUser.save()
.then(user=>res.json())
})
})
}
})
});
module.exports=router;
在文件“C:\Users\SMIT\Desktop\project\model/User.js”中,按如下方式导出变量
var User = mongoose.model('User',UserSchema);
module.exports = {User};
希望它能解决文件“C:\Users\SMIT\Desktop\project\model/User.js”中的问题
var User = mongoose.model('User',UserSchema);
module.exports = {User};
希望它能解决这个问题