Подтвердить что ты не робот

Монах против Монгуста для Монгоба

Я изучаю NodeJs.

Чтобы подключиться и использовать MongoDB от NodeJS, я вижу много примеров, используя либо Monk, либо Mongoose.

Являются ли эти две библиотеки эквивалентными? Имеют ли они одни и те же функции или каждый из них имеет определенную цель?

Как новичок в NodeJS, который я должен использовать?

Вот несколько примеров кода, в котором используется Monk:

var mongo = require('mongodb');
var monk = require('monk');
var db = monk('localhost:27017/nodejsapp');

----
exports.userlist = function(db) {
    return function(req, res) {
        var collection = db.get('users');
        collection.find({},{},function(e,docs){
            res.render('userlist', {
                "userlist" : docs
            });
        });
    };
};

и здесь образец, который использует Mongoose:

   var mongoose = require('mongoose');
----
 mongoose.connect('localhost', 'test');
 var db = mongoose.connection;
  db.on('error', console.error.bind(console, 'connection error:'));
  db.once('open', function callback() {
   console.log('Connected to DB');
});

// User Schema
var userSchema = mongoose.Schema({
   username: { type: String, required: true, unique: true },
   email: { type: String, required: true, unique: true },
  password: { type: String, required: true},
});
4b9b3361

Ответ 1

Они то же самое делают одно и то же соединение? или они имеют конкретную цель?

Они разные, хотя они являются двумя подходами к одной и той же основной проблеме. Mongoose - довольно сложная полная ORM. Больше возможностей, но сложнее. Монах меньше по размеру и поэтому легче понять.

Мое предложение начальное кодирование с базовым модулем драйвера mongodb напрямую. Когда вы понимаете, как это работает, и как его часть раздражает, вы поймете преимущество monk и можете попробовать это, чтобы посмотреть, нравится ли вам это. Я бы не стал рекомендовать mongoose новичкам. Mongodb уже достаточно сложный, чтобы учиться, и в то время как мангуста может быть полезна, он API довольно волшебный и предполагает, что вы уже знаете сложные аспекты mongodb.

Ответ 2

Если вы изучаете NodeJS и Mongo, вам действительно не нужно ничего другого - на самом деле MongoDB предлагает бесплатный онлайн-класс для разработчиков MongoDB и NodeJS. Нет необходимости в каких-либо дополнительных упаковках.

См. https://university.mongodb.com/