Anonymous
А компас не умеет?
Мне так то для проектирование это все нужно, лень просто схемы самому рисовать в миро)
Nikita
может кто подскажет, как правильно отредактировать обьект, точнее массив вложеный в свойство. грубо говоря у меня в базе хранится { name: "hello", arr: [{},{},{}] } и вот в arr надо добавить еще один обьект
Google
Всем привет можете помочь исправить ошибку в mongodb unhandledRejection E11000 duplicate key error collection: apischool.users index: email_1 dup key: как можно сделать чтобы всё равно записал в базу чтобы небыло ошибки
Google
как можно сделать чтобы всё равно записал в базу чтобы небыло ошибки
Yaroslav
как можно сделать чтобы всё равно записал в базу чтобы небыло ошибки
Удалить уникальный индекс или изменить значение поля которое вы хотите вставить на уникальное
Dmitriy
Добрый день. Коллеги, подскажите как вывести данные в обратном порядке из коллекции (Аналог Order by id desc в mysql) то есть если я прошу вывести 10 записей по фильтру, но при этом не с начала коллекции а с конца ?
no
.sort({ field: -1 (desc) | 1 (asc)})
Dmitriy
понял. спс большое)
Anonymous
как проверить что строка входит в строку которая лежит в таблице монги
Anonymous
но без regexp
Anonymous
hash: { $regex: new RegExp(req.body.hash, 'gi') },
Anonymous
так ошибка err Invalid regular expression: /[&Á Ý\'ÞðÃ,x¦/: Unterminated character class
Google
всем привет можете помочь исправить проблему есть json но в монго немогу импортировать такое ошибку получаю, а сделанно экспорт с mongodb
Google
‼️‼️🧲🧲
Leonid
‼️‼️🧲🧲
JSON невалидный
Leonid
Проверь в любом online json валидаторе
Google
как я же с этого сделал экспорт
Google
с MongoDB Compass сделал экспорт
Google
и не могу импортировать
Leonid
Надо смотреть json. Возможно экспорт был с ошибкой. Или версия софта не поддерживает экспортнутый синтаксис из компаса. Я сталкивался с проблемой, что экспорт из studio3t не импортился в robo3t по причине того, что robo3t не принимал IsoDate как обьект (возможно это было и не IsoDate, а другой тип. Но я не помню)
Google
mongoimport --jsonArray --db YourDatabase --collection YourCollection --file Yourfile.json
Google
нашёл такой способ работает но через MongoDB Compass не работает
Leonid
нашёл такой способ работает но через MongoDB Compass не работает
Я в моем случае так же через cli импортировал. Видимо софт накладывает свои ограничения на json синтаксис
Herman
Ребят, привет) такая трабла надо вывести последний заказ, типо есть массив заказов, юзать $slice
Herman
"orders": [ { "_id": "5fbc038ebb1e0d10c3ecb67f", "orderId": "k6u3b7khuwixuj", "videoUrl": "https://zoom.com", "viewsOnVideo": 100, "orderCreationDate": "2020-11-23T18:46:38.299Z", "orderStatus": "In Cart", "totalOrderValue": 100 }, { "_id": "5fbc0430bb1e0d10c3ecb682", "orderId": "k6u3b7khuwmez0", "shares": 100, "userName": "Filer", "orderCreationDate": "2020-11-23T18:49:20.460Z", "orderStatus": "In Cart", "totalOrderValue": 100 }, ], "_id": "5fbc026cbb1e0d10c3ecb67b", "userName": "testUser", "email": "usertestam@gmail.com", "active": false, "status": "USER", "moneyAmount": "0 RUB"
Herman
типо такая структура
Herman
может кто подсказать что я делаю не так?
Herman
ответ получаю пустой
Herman
ребят, кому не сложно подскажите что я делаю не так
Nick
упс не для того метода
Herman
$slice: -1
без $orders?
Herman
упс не для того метода
а что за $project? я в доке нашел и на стаке
Nick
а что за $project? я в доке нашел и на стаке
проджект это этап агрегации позволяющий преобразовать формат сообщения и данных в полях, аналог map() во всяких мапредьюсах
Herman
проджект это этап агрегации позволяющий преобразовать формат сообщения и данных в полях, аналог map() во всяких мапредьюсах
я там показал как отбражается структура, и по ней я ищу последний заказ, а перед этим получаю айдишник юзера
Herman
у вас правильно запрос составлен
правильно? блин, в чем же тогда проблема(
Herman
я уже с ума схожу
Nick
я уже с ума схожу
https://mongoplayground.net/p/R8DFY5ptP0t
Nick
проверьте что после стейджа match вы поулчаете какието данные
Nick
уберите $project и проверьте что данные действительно есть
Herman
я пробовал
Herman
Nick
да
Herman
просто оставить айдишники?понял
Nick
и проверить что с матчем данные есть, и их вид проверить
Herman
нема(
Nick
во
Herman
щас буду думать что не так, спасибо за совет)
Nick
теперь уже понятно что дело в матче и самом запросе
Herman
странно что он _id не видит
Nick
првоерьте что у вас в id хранится, возможно там не сам id а каша
Nick
больше логов))
Herman
а точно, монга сама не может
Herman
это же монгус все делает сам
Herman
больше логов))
очень странно, лог пустой
Nick
а типо что он ObjectId?
да, если делать нативный запрос в обход монгуса, то надо будет к нему кастовать
Nick
ага это текстовый виде ObjectId
Herman
ага это текстовый виде ObjectId
а можете дать ссылку, или название) как перекастовать, пожалуйста)
Nick
а можете дать ссылку, или название) как перекастовать, пожалуйста)
https://stackoverflow.com/questions/36193289/moongoose-aggregate-match-does-not-match-ids
Nick
чтото такое, не сильен в тонкостях но вроде норм написано, там mongoose.Types.ObjectId(el)
Nick
то что было у вас оно для массива в примере. вам просто нужно чтото типа id=mongoose.Types.ObjectId(id)
Herman
import {ObjectId} from 'mongodb' ; new ObjectId(id)
сделал как вы написали. в ответе получил "$in needs an array"
Nick
так а вам $in и не нужен был
Nick
верните _id: id
Herman
верните _id: id
у меня шас так
Nick
либо _id: {$in: [ids]} либо _id: ids
Herman
либо _id: {$in: [ids]} либо _id: ids
ну я так понял $match не отрабатывает
Herman