Я пишу систему с регистрацией. И по возможностям устройств требование состоит в том, чтобы иметь 16 байтов для идентификатора пользователя. Кроме того, я знаю, что mongo создает ObjectID для каждого вставленного объекта, который уникален, по крайней мере, в коллекции. И этот идентификатор имеет длину 12 байтов. Мне было интересно - возможно ли изменить конфигурацию где-нибудь в mongo, чтобы он генерировал 16-байтовый идентификатор? Я думал о заполнении 12 байтов ids с 4 нулевыми байтами, это решение, но это грубая сила imo. Есть ли способ лучше?Изменить политику идентификатора mongodb
ответ
Нет конфигурации на стороне сервера, чтобы изменить формат ObjectID, но вы можете предоставить все, что угодно _id
в своем приложении. Для вставок драйверы генерируют _id
для вас локально в любом случае за кулисами при вставке; сервер генерирует его только для операций upsert
.
До тех пор, пока вы не зависеть от upsert
, лучше всего создать свои собственные поля _id
. Например, для 16-байтов можно использовать генератор UUID.
. Можете ли вы показать пример, как я могу вставить '_id' в монго? Я думал, что поля '_ *' зарезервированы только для внутреннего использования mongodb. Или я должен следовать стандартной процедуре вставки с указанным полем '_id'? –
Вы можете добавить _id как любое другое поле. – xdg
- 1. Изменить политику аудита (групповая политика)
- 2. Изменить политику имени пользователя django?
- 3. Как изменить политику локальной группы и локальную политику безопасности программно?
- 4. JavaFX: Как изменить политику обхода фокуса?
- 5. spring, как изменить политику именования cglib
- 6. Изменить локальную политику безопасности (registry/powershell/other)
- 7. Невозможно изменить политику нитей в SCHED_FIFO
- 8. Как изменить политику сна Wi-Fi программно?
- 9. Как программно изменить политику загрузчика классов?
- 10. Как изменить групповую политику через командную строку?
- 11. Как изменить политику планирования в cloudim?
- 12. Использование функционального идентификатора с MongoDB
- 13. как приращение идентификатора в MongoDB
- 14. изменить имя идентификатора user_id
- 15. MongoDB - Использование идентификатора электронной почты в качестве идентификатора в коллекциях
- 16. Как изменить регистр идентификатора пакета?
- 17. изменить фон идентификатора, который нажал
- 18. Возврат идентификатора из недавно вставленного документа - mongoDB
- 19. Текстовое поле поиска и идентификатора Mongodb
- 20. passport.js - получение идентификатора пользователя для запроса mongoDB
- 21. Сжатие идентификатора объекта MongoDB в Ruby
- 22. Как проверить правильность идентификатора mongodb с php
- 23. C# MongoDb - Поле вывода идентификатора правильно?
- 24. Переопределение идентификатора в объекте JSON из mongodb
- 25. MongoDB ObjectID safe для идентификатора сеанса
- 26. делает mongodb поддерживает multiget на основе идентификатора?
- 27. Mongodb изменить метод отношений
- 28. Mongodb - Изменить имя db
- 29. Mongodb изменить тип поля
- 30. Изменить MongoDB версия установлена
Сначала вы можете изменить свое приложение, чтобы вставить эти идентификаторы, но затем вы также можете создать .mongorc для консоли, которая заменит помощника objectId вашим – Sammaye