내가 뭘 잘못하고 있는지 확실하지 않습니다. 여기 내 check.js가 있습니다.
var db = mongoose.createConnection('localhost', 'event-db');
db.on('error', console.error.bind(console, 'connection error:'));
var a1= db.once('open',function(){
var user = mongoose.model('users',{
name:String,
email:String,
password:String,
phone:Number,
_enabled:Boolean
});
user.find({},{},function (err, users) {
mongoose.connection.close();
console.log("Username supplied"+username);
//doSomethingHere })
});
그리고 여기에 내 insert.js가 있습니다.
var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/event-db')
var user = mongoose.model('users',{
name:String,
email:String,
password: String,
phone:Number,
_enabled:Boolean
});
var new_user = new user({
name:req.body.name,
email: req.body.email,
password: req.body.password,
phone: req.body.phone,
_enabled:false
});
new_user.save(function(err){
if(err) console.log(err);
});
check.js를 실행하려고 할 때마다이 오류가 발생합니다.
컴파일 된 후에는 '사용자'모델을 덮어 쓸 수 없습니다 .
이 오류는 스키마의 불일치로 인해 발생한다는 것을 이해하지만 어디에서 발생하는지 알 수 없습니다. 저는 mongoose와 nodeJS를 처음 접했습니다.
내 MongoDB의 클라이언트 인터페이스에서 얻은 정보는 다음과 같습니다.
MongoDB shell version: 2.4.6 connecting to: test
> use event-db
switched to db event-db
> db.users.find()
{ "_id" : ObjectId("52457d8718f83293205aaa95"),
"name" : "MyName",
"email" : "myemail@me.com",
"password" : "myPassword",
"phone" : 900001123,
"_enable" : true
}
>