2017-02-08 4 views
0

Ich versuche, Daten in eine Mongodb-Datenbank einzufügen.Benutzerdaten in mongodb Datenbank einfügen

ich in der Lage bin Benutzerdaten vorlegen und zeigen Sie es mit ...

app.get('/process_get', function (req, res) { 
    response = { 
     first_name:req.query.firstName, 
     last_name:req.query.lastName, 
     username:req.query.userName, 
     password:req.query.password, 
     email:req.query.email 
    }; 
    console.log(response); 
    res.end(JSON.stringify(response)); 
}) 

Ich öffnete dann eine Verbindung mit mongodb und schuf eine Sammlung „test“ erfolgreich ...

MongoClient.connect("mongodb://localhost:27017/exampleDb", function(err, db) { 
    if(err) { return console.dir(err); } 
    if(!err) { console.log("MongoDB server is connected!") } 

    var collection = db.collection('test'); 
}) 

Ich habe versucht "collection.insert ({name: req.query.firstName});" aber das hat offensichtlich nicht funktioniert, weil keine "req". Wie mache ich die Eingänge global so kann ich sie einfach einfügen?

Antwort

0

Sie müssen dies nicht innerhalb des Datenbankverbindungs-Callbacks tun. Stellen Sie einfach eine Verbindung zu Ihrer Datenbank her und rufen Sie dann die Modelle auf.

//Setup Server and connect to mongoDB 
var app = require('express')(); 
var mongoose = require('mongoose'); 
mongoose.Promise = require('bluebird'); 
mongoose.connect('mongodb://localhost:27017/exampleDb'); 

//Create the model 
var testSchema = mongoose.Schema({ 
    .. 
}); 
var Test = mongoose.model('test', testSchema); 

//Now use the model to save the object in the route controller 
app.get('/process_get', function (req, res) { 
    response = { 
    .. //build the object based on some input or pas req.body directly 
    }; 
    console.log(response); 
    new Test(response).save().then(function(result) { 
    res.end(JSON.stringify(result)); 
    }); 
}); 

ACHTUNG! Sie sollten diese Logik in verschiedene Dateien aufteilen, um die Wartung Ihres Projekts zu erleichtern. Der einzige Grund für mich, alles in einer Datei zu haben, ist die Komplexität zu beseitigen.

Verwandte Themen