Charles
Charles

Reputation: 161

Getting input from console

I have this code

var MongoClient = require('mongodb').MongoClient;

var url = 'mongodb://localhost:27017/clboTest';



// this could have comed from a form from the browser
var objToInsert = {
    _id: 2,
    price: 20000,
    name: stdin,
    description: "20 carat gold ring. ",
    //schoolID: { name: 'RUC', address: 'Roskilde', country: 'Denmark' }
};



MongoClient.connect(url, function (err, db) {

var collection = db.collection('products');

collection.insert(objToInsert, function (err, result) {
    console.log(result);
    db.close();
});

});

I don't want to have the information hardcoded (such as price, name). How can I input something new in the console instead of having to hardcore my insert.js file with new information over and over again?

Upvotes: 0

Views: 85

Answers (1)

piscator
piscator

Reputation: 8739

You could use a package called readline-sync. Then you could wait for the user input before you insert the object:

var readlineSync = require('readline-sync');

var name = readlineSync.question('name: ');
var price = readlineSync.questionInt('price: ');

console.log(name);
console.log(price);

var objToInsert = {
    _id: 2,
    price: price,
    name: name,
    description: "20 carat gold ring. ",
    //schoolID: { name: 'RUC', address: 'Roskilde', country: 'Denmark' }
};

Good luck!

Upvotes: 1

Related Questions