Описание тега monk
Monk - это крошечный слой, который обеспечивает некоторые улучшения удобства использования MongoDB в Node.JS
Особенности (взяты со страницы монахов на github):
- Буферизация команд. Вы можете сразу же начать запросы.
- Встроенные обещания для всех запросов. Легкая совместимость с модулями.
- Простое подключение / настройка
- Грамотно оформленные подписи
- Улучшения API MongoDB (например:
findAndModify
поддерживаетupdate
фирменный стиль)- Авто-литье
_id
в запросах- Строится поверх монгоскина
- Позволяет установить глобальные параметры или параметры уровня коллекции для запросов. (например:
safe
являетсяtrue
по умолчанию для всех запросов)
Подключение
var db = require('monk')('localhost/dbname');
Чтобы установить глобальный мульти-документ на уровне базы данных
db.options.multi = true;
Чтобы установить глобальный мультидокумент на уровне коллекции
db.get('users').options.multi = false;
Закрыть соединение с БД
db.close();
Операции
var collection = db.get('collection');
collection.insert({ }, function(err) { });
collection.find({ }, function(err, docs) { });
collection.findOne({ }, function(err, doc) { });
collection.update({ }, { }, function(err, docs) { });
collection.findAndModify({ }, { }, function(err, docs) { });
collection.findById('id', function(err, doc) { });
collection.drop(function(err) { });
Индекс
collection.index('name.first', function() { });
Unique Index
collection.index('email', { unique: true });
Compound Index
collection.index('name.first name.last')
Compound with sort
collection.index({ 'email': 1, 'password': -1 });
To get indexes for a collection
collection.indexes(fn);
Drop an index
collection.dropIndex(name, fn);
Drop all indexes
collection.dropIndexes(fn);