Size: a a a

2020 May 02

VM

Viktor Maklakov in MongoDB Russian
Просто бывает время от времени пустоту отдаёт
источник

DL

Daniil Lebedinsky in MongoDB Russian
значит что то не так у вас в коде
источник

DL

Daniil Lebedinsky in MongoDB Russian
скорее всего с room
источник

VM

Viktor Maklakov in MongoDB Russian
Да, возможно.
источник

VM

Viktor Maklakov in MongoDB Russian
Мб где-то async/await забыл
источник

DL

Daniil Lebedinsky in MongoDB Russian
странно, что вы используете async/await и при этом обрабатываете ответ в колбеке
источник

VM

Viktor Maklakov in MongoDB Russian
Да
источник

VM

Viktor Maklakov in MongoDB Russian
Но без этого пустота приходила
источник

VM

Viktor Maklakov in MongoDB Russian
Viktor Maklakov
Исправил так: :D
while (!messages.length) {
     await MsgsMongo
     .find({ room }, (err, res) => {
       if (err) return console.error(err);
       messages.push(...res);
     })
   }
Помог перезапрос.
источник

VM

Viktor Maklakov in MongoDB Russian
Хотя это похоже на костыль.
источник

DL

Daniil Lebedinsky in MongoDB Russian
абсолютный
источник

DL

Daniil Lebedinsky in MongoDB Russian
как и async/await вместе с колбеком)
источник

VM

Viktor Maklakov in MongoDB Russian
Daniil Lebedinsky
как и async/await вместе с колбеком)
С этим согласен)
источник

О

Олег in MongoDB Russian
Daniil Lebedinsky
В CitySchema должен быть объявлен массив regions: [{ type: ObjectId, ref: ‘city’ }]
Вы создаете город с пустым массивом regions
После чего вы создаете новый регион, берете его айдишку и выполняете запрос вида:
City.updateOne({ _id: cityId }, { $push: { regions: regionId } })
Тем самым добавляя в массив regions нужного вам города новый регион
Потом можно сделать City.find({}).populate(‘regions’)
Получилось примерно вот так:
const region = await Region.create({ name });
await City.updateOne({ _id: cityId }, { $push: { regions: region._id } });

Но в регионе получается лишний ref на city, потому что я его не записываю
источник

VM

Viktor Maklakov in MongoDB Russian
Вы правы, походу пустой room приходит, поэтому и пустоту выдаёт.
источник

DL

Daniil Lebedinsky in MongoDB Russian
Олег
Получилось примерно вот так:
const region = await Region.create({ name });
await City.updateOne({ _id: cityId }, { $push: { regions: region._id } });

Но в регионе получается лишний ref на city, потому что я его не записываю
если вам не нужны будут выборки в другую сторону, то уберите это поле из схемы
источник

О

Олег in MongoDB Russian
Daniil Lebedinsky
если вам не нужны будут выборки в другую сторону, то уберите это поле из схемы
Ага, разобрался, тупанул сейчас думал не передаю ид что бы записать, а я же его передаю) спасибо
источник

GB

Georgiy Bukharov in MongoDB Russian
Привет!
Порекомендуйте buildpack на heroku, чтобы делать mongodump прода и mongorestore на дев и стейджинг. Их там много, хз, какой стоит взять.
https://elements.heroku.com/search/buildpacks?q=mongo
Этот кажется годным: http://github.com/guidodizi/heroku-buildpack-mongo.git
источник

AT

Anton T in MongoDB Russian
Привнт всем,  в монго 4 как я понял не подерживается --source, как можно настроить реплекацыю без реплика сетов на мастере?
источник

R

Roman in MongoDB Russian
я вас нашёл
источник