我正在尝试一个简单的nodejs应用程序。所有工作正常,直到我将db模型分离到用户文件并在routes.js中需要它。然后当我尝试运行时,它会发出“AssertionError:missing path”错误服务器
routes.js (path ='demo / app / routes.js')
var User=require('./models/user');
module.exports=function(app){
app.get('/',function(req,res){
res.send("hello world");
});
app.get('/:username/:password',function(req,res){
var newUser =new User();
newUser.local.username=req.params.username;
newUser.local.password=req.params.password;
console.log(newUser.local.username);
newUser.save(function(err){
if(err){
throw err;
}
});
res.send('success');
});
}
user.js (path ='demo / app / models / user.js')
var mongoose=require(mongoose);
var userScheme=mongoose.Schema({
local:{
username:String,
password:String
}
});
module.exports=mongoose.model('User',userScheme);
server.js 正在运行的文件(demo / server.js)
var express=require('express');
var app=express();
var port =process.env.PORT||3000;
var morgan=require('morgan');
var cookieParser=require('cookie-parser');
var session=require('express-session');
var mongoose=require('mongoose');
var configDB=require('./config/database.js');
mongoose.connect(configDB.url);
app.use(morgan('dev'));
app.use(cookieParser());
app.use(session({
secret:'pokemonGo',
saveUninitialized:true,
resave:true
}));
require('./app/routes.js')(app);
app.listen(port);
console.log('server running ');
,错误显示
assert.js:90
throw new assert.AssertionError({
^
AssertionError: missing path
at Module.require (module.js:351:3)
at require (internal/module.js:12:17)
at Object.<anonymous> (/Users/menaka/WebstormProjects/cardCreaterServer/app/models/user.js:4:14)
at Module._compile (module.js:409:26)
at Object.Module._extensions..js (module.js:416:10)
at Module.load (module.js:343:32)
at Function.Module._load (module.js:300:12)
at Module.require (module.js:353:17)
at require (internal/module.js:12:17)
at Object.<anonymous> (/Users/menaka/WebstormProjects/cardCreaterServer/app/routes.js:4:10)
at Module._compile (module.js:409:26)
at Object.Module._extensions..js (module.js:416:10)
at Module.load (module.js:343:32)
at Function.Module._load (module.js:300:12)
at Module.require (module.js:353:17)
at require (internal/module.js:12:17)
答案 0 :(得分:8)
这是语法错误
更改
var mongoose=require(mongoose);
到 - &gt;
var mongoose=require('mongoose');
特别感谢@YuryTarabanko