Dmitriy
Nick
Dmitriy
вот в компассе делаю в MongoSH
Nick
начиная с 4.0 или 4.2 утилиты вынесены в отдельный пакет поставки
Nick
Nick
это нативно в консоли
Dmitriy
ну вообще у меня кластер в Атласе
Nick
https://docs.mongodb.com/database-tools/mongodump/
Nick
ставите себе утилиты, запускаете и не боитесь что вам чето поламает компас
Nick
Andrey
ребят, есть уже существующий updateOne, можно ли добавить как-то $set определенного поля если его не существует?
Andrey
грубо говоря
.updateOne(
{
_id: dbPayment.accountid,
},
{
$inc: {
balance: dbPayment.credits,
},
})
хотелось бы сделать $set: {verified: new Date()} но только если поля verified еще нет, без доп операции
Anonymous
Herman
привет) такой вопрос у меня вот такая сущность юзер, хотя в массиве paymentCards именить один из обьектов по его _id , но чет не получается( "comments": [],
"orders": [],
"tikTokAccounts": [],
"tikTokVideos": [],
"paymentCards": [
"9999999999999999",
{
"_id": "5fc92cdba2f9b6997383dd4e",
"cardNumber": "1111111111111111"
},
{
"_id": "5fc930b1eaceb59c821c1611",
"cardNumber": "1111111111111111"
}
],
"_id": "5fc92b4ca2f9b6997383dd4c",
"userName": "ANO",
"email": "ano@gmail.com",
"password": "$2b$10$YM7sNNuN9Igewc84cN5SsewksuWpy7iuwb1Nkqub5aQjphja.pT8u",
"avatar": "https://www.flaticon.com/svg/static/icons/svg/667/667378.svg",
"status": "USER",
"moneyAmount": 0
Herman
Herman
https://docs.mongodb.com/manual/reference/operator/update/positional/
Herman
как я типо думал, отсортировать сначала по имейлу юзера, потом в том массиве взять нужный обьект по айди
Herman
привет, может кто помочь?
Herman
Herman
ребят кому не сложно, подскажите)
Herman
Herman
Herman
я по доке лазил, вроде никаких ошибок
Andrey
Herman
Herman
она случайно получилась) все равно базу сносить буду
Herman
у меня там в массивах только обьекты должны быть
Andrey
вот в доке пример
db.students.updateOne(
{ _id: 4, "grades.grade": 85 },
{ $set: { "grades.$.std" : 6 } }
)
Herman
Andrey
в ids что лежит?
Herman
с params
Herman
Andrey
не понимаю что такое params ))) в доке 0 об этом ключевом слове
ну так не делай пул, почему не сделать set?
Andrey
скинь код, который пробовал с $set
Herman
Andrey
да до лампочки это причем тут?
Andrey
ты по базе вопрос же задаешь
Herman
да
Andrey
давай составим запрос, где кто и за кого там хлопает бургеры не интересует
Herman
ты просто спросил про params)
Andrey
ну ты просто мне пишешь про то что не важно на уровне шума оперируй контекстом вопроса и топика в части базы
Andrey
где знак доллара?
Herman
Andrey
в доке он есть
Herman
пипец...
Herman
Herman
я не знаю, чем я смотрел, точнее я догадываюсь
Andrey
Dezmunt
Нужно сделать пагинацию с учетом фильтров на странице. Я при выдаче даю по 16 элементов через limit и skip. Но мне надо корректно отображать количесвто страниц на фронте для этого нужно общее количество полученных записей БД с учетом запроса. Делать повторный запрос без лимита чтоб потом взятб длину слишко больно по производительности. Как быть?
Anatoly
Dezmunt
Azamat
Привет! Использую https://www.npmjs.com/package/mongoose-aggregate-paginate-v2. У меня в Mongoose Schema имеются virtual fields. А этот плагин удаляет их из результата запроса. Что делать чтобы он оставил virtual fields?
Dan
нэт)
...
Спасибо) сделал
Dezmunt
Мы може в агрегации как нибудь получить через lookup несколько определенных полей из другой коллекции? в populate это делалось без проблем, задавалось массивом, а тут вообще хз как
Anatoly
Andry
Всем вечер!
Andry
Подскажите пожалуйста такая проблема
Andry
db.getCollection('Order').find({ $where: "'LoyaltyCardId'.startsWith('71')"}).limit(1)
Andry
Делаю такой запрос и висит просто адски долго
Andry
на поле индекс неуникальный
Mirasov
Example app listening at http://localhost:2000
(node:16992) DeprecationWarning: current Server Discovery and Monitoring engine is deprecated, and will be removed in a future version. To use the new Server Discover and Monitoring engine, pass option { useUnifiedTopology: true } to the MongoClient constructor.
(Use node --trace-deprecation ... to show where the warning was created)
Nick
Mirasov
из за чего такая ошибка может произойти
Nick
из за чего такая ошибка может произойти
это не ошибка, а варнинг. И там собсна написано что делать To use the new Server Discover and Monitoring engine, pass option { useUnifiedTopology: true } to the MongoClient constructor.
Mirasov
но предупреждение чего?
Andry
Nick
стандартное предупреждение о том что в будущем вам надо будет переписат ькод и вы можете сделать это сейчас, а не ждать когда все именно сломается
Andry
А подскажите еще один момент
Andry
db.getCollection('Order').find({"LoyaltyCardId" : "/^85/"}, {"_id":1, "LoyaltyCardId":1}).count()