Also versuche ich derzeit eine mmorpg von Grund auf neu zu entwickeln und habe versucht, Benutzer von meinem Client-Seite zu speichern (ich benutze Game Maker Studio). Ich benutze Robomongo als mein Mongodb Management Tool. Mein Client verbindet sich gut mit meinem Server und kann einen Benutzernamen und ein Passwort aufnehmen, aber nichts wird in der Datenbank gespeichert, die ich erstellt habe. Hier ist meine user.js Datei:Mongoose speichert keine Daten in lokalen mongodb
var mongoose=require('mongoose');
var userSchema=new mongoose.Schema({
username: {type: String, unique:true},
password: String,
sprite:String,
current_room: String,
pos_x:Number,
pos_y:Number
});
userSchema.statics.register=function(username,password,cb){
var new_user=new User({
username: username,
password: password,
sprite: "spr_Hero",
current_room:maps[config.starting_zone].room,
pos_x:maps[config.starting_zone].start_x,
pos_y:maps[config.starting_zone].start_y,
});
//save user to database
new_user.save(function(err){
if(!err){
cb(true)
}else{
cb(false);
}
});
};
userSchema.statics.login=function(username,password,cb){
//findOne searched db - mongodb specific method
//searches db using json objects (cant do that in other sql/mysql)
User.findOne({username:username},function(err,user){
if(!err && user){
if(user.password==password){
cb(true,user);
}else{
cb(false,null);
}
}else{
//error||user doesnt exist
cb(false,null);
}
})
};
//export into gloabl space of our application
module.exports=User=gamedb.model('User',userSchema);
und hier ist meine mongodb.js Datei. Ich habe den Speicherort der Datenbank in meiner config.js konfiguriert. Ich benutze nur meine lokale IP. Jede Hilfe bei der Reparatur wäre super, danke!
var mongoose=require('mongoose');
mongoose.Promise=global.Promise;
module.exports=gamedb=mongoose.createConnection(config.database);
Nur in dem Fall könnte es von Nutzen sein, im v 3.4.0 von Mongodb und v1.0 robomongo – Kimeru
gerade zu stoßen, damit die Frage nicht verloren geht. – Kimeru