mongoose- все статьи тега ➜ страница 2
Файловая структура проекта Mongoose & NodeJS
В настоящее время у меня есть все мои модели (определения схемы) в /models/models.js-файл для моего приложения Mongoose/NodeJS. Я хотел бы разбить их на разные файлы как таковые: user_account.Яш, профиль.js, etc. Однако я не могу этого сделать, так как мои контроллеры ломаются и отчитываются "не удается найти модуль" как только я разделю эти классы. моя структура проекта выглядит следующим образом: /MyProject /controllers user.js foo.js bar.js // ... etc, etc /models ...
MongoDB, удалить объект из массива
Doc: { _id: 5150a1199fac0e6910000002, name: 'some name, items: [{ id: 23, name: 'item name 23' },{ id: 24, name: 'item name 24' }] } есть ли способ вытащить конкретный объект из массива? Т. е. как я могу вытащить весь объект item с идентификатором 23 из массива items. Я пробовал: db.mycollection.update({'_id': ObjectId("5150a1199fac0e6910000002")}, {$pull: {id: 23}}); однако я уверен, что я не использую "тянуть" правильно. Из того, что я понимаю, ...
Как защитить поле пароля в Mongoose / MongoDB, чтобы оно не возвращалось в запросе при заполнении коллекций?
Предположим, у меня есть две коллекции/схемы. Один из них-схема пользователей с полями имени пользователя и пароля, затем у меня есть схема блогов, которая имеет ссылку на схему пользователей в поле автора. Если я использую Мангуста, чтобы сделать что-то вроде Blogs.findOne({...}).populate("user").exec() У меня будет документ блога и пользователь заполнены тоже, но как я могу предотвратить Мангуст/MongoDB от возврата поля пароля? Поле пароля хэшируется, но оно не должно быть возвращено. Я зн ...
Мангуст конвертировать документы в формат JSON
Я вернул документы мангуста как json следующим образом: UserModel.find({}, function (err, users) { return res.end(JSON.stringify(users)); } пользователь.__ proto__ также был возвращен. Как я могу вернуться без него? Я попробовал это, но не сработало: UserModel.find({}, function (err, users) { return res.end(users.toJSON()); // has no method 'toJSON' } ...
Невозможно перезаписать модель после компиляции Мангуста
не уверен, что я делаю неправильно, вот мой чек.js var db = mongoose.createConnection('localhost', 'event-db'); db.on('error', console.error.bind(console, 'connection error:')); var a1= db.once('open',function(){ var user = mongoose.model('users',{ name:String, email:String, password:String, phone:Number, _enabled:Boolean }); user.find({},{},function (err, users) { mongoose.connection.close(); console.log("Username supplied"+username); //doS ...
Мангуст, обновить значения в массиве объектов
есть ли способ обновить значения в объекте? { _id: 1, name: 'John Smith', items: [{ id: 1, name: 'item 1', value: 'one' },{ id: 2, name: 'item 2', value: 'two' }] } допустим, я хочу обновить имя и значение элементов для элемента, где id = 2; Я пробовал следующее ж / Мангуст: var update = {name: 'updated item2', value: 'two updated'}; Person.update({'items.id': 2}, {'$set': {'items.$': update}}, function(err) { ... проблема с этим подходом заключает ...
Мангуст: получить полный список пользователей
Я попытался использовать Мангуста, чтобы отправить список всех пользователей следующим образом: server.get('/usersList', function(req, res) { var users = {}; User.find({}, function (err, user) { users[user._id] = user; }); res.send(users); }); конечно, res.send(users); собирается направить {}, что не то, что я хочу. Есть ли find альтернатива с несколько иной семантикой, где я мог бы сделать следующее? server.get('/usersList', function(req, res) { User.find({ ...
Мангуст-что делает функция exec?
я наткнулся на кусок кода мангуста, который включал запрос findOne, а затем функцию exec (). Я никогда не видел этот метод в JavaScript раньше? Что именно он делает? ...