«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как преобразовать примитив.ObjectID в строку в Golang?

Как преобразовать примитив.ObjectID в строку в Golang?

Опубликовано 8 января 2025 г.
Просматривать:557

How do you convert a primitive.ObjectID to a string in Golang?

Преобразование Primitive.ObjectID в строку в Golang

В Go mongo-драйвер из go.mongodb.org/mongo-driver управляет Типы данных MongoDB. Однако преобразование типа примитива ObjectID в строку требует особого подхода.

При попытке использовать утверждение типа, как показано в предоставленном коде:

mongoId := mongoDoc["_id"]
stringObjectID := mongoId.(string)

Эта строка вызывает ошибку:

panic: interface conversion: interface {} is primitive.ObjectID, not string

Возникает проблема потому что mongoDoc["_id"] — это интерфейс{}, содержащий значение типа примитив.ObjectID. Утверждение типа может выполняться только для примитивных типов из значений интерфейса.

Чтобы получить строковое представление примитива.ObjectID, используйте метод Hex() типа примитива.ObjectID. Этот метод получает шестнадцатеричное представление байтов ObjectId:

mongoId := mongoDoc["_id"]
stringObjectID := mongoId.(primitive.ObjectID).Hex()
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3