𝐃𝐢𝐦𝐚
𝐃𝐢𝐦𝐚
Daniil
А в чем вопрос?
Daniil
Вам известен идентификатор чата когда пользователь отправляет сообщение, когда делаете запись сообщения в базу добавляйте помимо всего прочего идентификатор чата в поле chat
Daniil
В чате не нужно хранить идентификаторы всех сообщений
Daniil
Достаточно идентификатора чата в самом сообщении
Daniil
Я не знаю вашей задачи, но обычно тащить все сообщения вместе с чатом плохая идея
Daniil
Тем более когда чатов несколько
𝐃𝐢𝐦𝐚
А в чем вопрос?
я только пробую mongo db/
сама суть что мне надо при создании нового message связать его с chat. Чтобы потом при выборке чата получить все его сообщения
Daniil
Daniil
Для учебной задачи схема конечно может быть как ваша
𝐃𝐢𝐦𝐚
Можеш открыть пожалуйста глаза , как ето делать правильно
𝐃𝐢𝐦𝐚
спасибо
Daniil
Daniil
Обычно для визуального представления на клиенте достаточно списка чатов и последнего сообщения у каждого из них
Daniil
При заходе в конкретный чат уже запрашиваются сообщения конкретного чата, лучше с использованием пагинации
Daniil
И обычно используется не одно соединение, а целый connection pool
Daniil
Т.е. несколько соединений, что позволяет отправлять запросы параллельно
Daniil
Не нужно постоянно открывать/закрывать соединение, это очень дорогая операция
𝐃𝐢𝐦𝐚
Daniil
Не вижу необходимости делать эти запросы в рамках транзакции
𝐃𝐢𝐦𝐚
NCR
Товарищи, есть 2 коллекции mongodb
В одном лежат отправленные письма, в другом - принятые письма
У них есть даты отправки и получения соответственно
Подскажите пожалуйста, как их поженить для отображения в виде "чата"?
NCR
Пришёл к тому, что map/foreach/filter никто не отменял
Bogdan
Roman
Если в схеме монгуса не указать require а только тип, то это поле будеть необязательное то есть require: false?
Daniil
Valeriy
добрый, есть вопрос по конфигам. Есть ли возможность юзать два разных кластера в одном приложении с одним конфигом. При этом иметь возможность моделям назначать какой кластер использовать, что то типа:
store_in collection: 'activeadmin_users', database: name_cluster
пример конфига:
development:
clients:
admindb:
uri: mongodb+srv://admindb_user:admindb_password@admin_cluster/admin_db?retryWrites=true&w=majority
options:
server_selection_timeout: 5
maindb:
uri: mongodb+srv://maindb_user:maindb_password@maindb_cluster/maindb?retryWrites=true&w=majority
Приложение: Rails 5, MongoId 6, Ruby 2.6
Сергей
Сергей
Аха, монга на бирже торгуется)
Kirill
Сергей
Konstantin
Сергей
Добрый день блема есть
Сергей
Сергей
chema user но при регистрации не все поля заполняются
Сергей
schema написана правильно ли?
Daniil
Daniil
если не все поля заполняются значит не все поля передаются корректно
Сергей
да
Спасибо ошибка на беке была
Сергей
забыл поле name вписать в .pthf
Сергей
где хорошая русская документация к mongo?
inqfen
>хорошая
>русская
>it
Сергей
++
Konstantin
Немного глупый вопрос, нужно ли создавать индекс по ключу "_id" или монга итак автоматически будет по нему индексировать?
kk
Konstantin
Daniil
++
Официальная документация на английском написана очень простым языком
Daniil
Если н знаете английского, то просто переводите страницу через переводчик
Daniyar
ребят, пытаюсь обновить данные в коллекции через robo 3t, вытаскивает ошибку "Error: the update operation document must contain atomic operators robo 3t": db.getCollection('products').updateMany({ "mode": {$in: ["parent_subproduct", "module", "simple"]}}, {"materials" : []}) ...в чем может быть проблема?
Может ли быть то что поле "materials" нет в доках?
Daniil
Daniyar
$set
ага.. все получилось.. спасибо)
Archakov
В чём прикол, почему children не отображается как массив объектов?
Archakov
Archakov
Leonid
Это рекурсивная схема? Коммент содержит другие коменты или я не так понял.
Andrew
Всем привет, подскажите, пожалуйста, от чего может возникать такая ошибка:
pymongo.errors.ConfigurationError: query() got an unexpected keyword argument 'lifetime', использую mongodb atlas
Archakov
Александр
Andrew
Версии dnspython, pymongo, motor последние...
Александр
motor не всегда использует последнюю Pymongo
🖤
Привет. Подскажите такое: я в коде создаю Datetime объект, сохраняю его в монгу через mongoose, и в монге оно отображается насколько я понимаю как приведённое к UTC, то есть появляется разница в часах. И загвоздка вот в чём: текст даты, с которой я создаю дату, она в таймзоне москвы, у меня таймзона владивостока, а в JS, которым я всё это делаю, в DateTime объекте нет часовых поясов вовсе, и я немного в затруднении, где мне подправить код?
UPD1: Предполагаю, что можно решить на уровне mongoose вот таким пакетиком mongoose-timezone
UPD2: ... но у него, увы, нет поддержки insertMany, которую я активно использую в коде. Попробую выпилить.
Daniil
Привет. Подскажите такое: я в коде создаю Datetime объект, сохраняю его в монгу через mongoose, и в монге оно отображается насколько я понимаю как приведённое к UTC, то есть появляется разница в часах. И загвоздка вот в чём: текст даты, с которой я создаю дату, она в таймзоне москвы, у меня таймзона владивостока, а в JS, которым я всё это делаю, в DateTime объекте нет часовых поясов вовсе, и я немного в затруднении, где мне подправить код?
UPD1: Предполагаю, что можно решить на уровне mongoose вот таким пакетиком mongoose-timezone
UPD2: ... но у него, увы, нет поддержки insertMany, которую я активно использую в коде. Попробую выпилить.
А какая вам разница что отображается визуально?
Daniil
В js тоже есть таймзона у объекта если что, увидеть ее можно вызвав метод toISOString
Daniil
С датами на сервере проще всего работать в UTC
🖤
А какая вам разница что отображается визуально?
Оно записалось с ошибкой. Как я написал, дата на моей стороне сгенерировалась как Владивостокская, а не московская. Я не могу просто в скрипте написать +7 часов, потому что я не знаю, где я его запущу завтра. toISOString сгенерирует таймзону на основании окружения запуска, однако вы её у объекта явно указать не можете при создании.
Daniil
🖤
Хммм, наверное действительно стоит вручную приводить к UTC, ведь скрипт то я запускаю с разных мест, а даты генерируются только с московской тз. Буду тогда прибавлять 3 часа при создании .
Daniil
Где у вас расположен сервер?
Daniil
🖤
Нет, не видимо. У меня есть данные, с которых я генерирую даты. Оно московское, это мне известно. Скрипт я тестирую у себя локально, у меня время владивостокское. Собственно, и записалось потому непонятно что.