Пн goose использовать как UUID, так и OID как _id - PullRequest
0 голосов
/ 06 августа 2020

Я создаю новую услугу взамен старой. В новом сервисе у меня есть модель с ObjectId в виде поля _id. В старой службе у меня есть модель с UUID в качестве поля _id.

Теперь у меня проблема с миграциями. Когда я переношу старую базу данных в новую, я хочу сохранить UUID, чтобы обе базы данных были синхронизированы c (старая база данных будет по-прежнему использоваться, и мы будем выполнять миграцию между ними, поэтому, имея одинаковый идентификатор в обеих базах данных мы бы знали, если это одна и та же запись.

Когда я пытаюсь записать в mon goose старую запись с UUID в базу данных, я получаю сообщение об ошибке:

validation failed: _id: Cast to ObjectId failed for value \"2fcbd799-d2bd-47c3-8f9a-6900b98ff27b\" at path \"_id\"

Mon goose автоматически преобразовать строку _id из запроса rest в ObjectId https://docs.mongodb.com/manual/core/document/#the -id-field

Интересно, могу ли я что-нибудь сделать для настройки mon goose, чтобы принять UUID в качестве допустимого поля _id, без переопределения _id в модели и замены его на тип String.

Спасибо!

...