"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como você converte um primitivo.ObjectID em uma string em Golang?

Como você converte um primitivo.ObjectID em uma string em Golang?

Publicado em 2025-01-08
Navegar:737

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

Convertendo Primitive.ObjectID em String em Golang

Em Go, o mongo-driver de go.mongodb.org/mongo-driver gerencia Tipos de dados MongoDB. No entanto, converter o tipo primitivo.ObjectID em uma string requer uma abordagem específica.

Ao tentar usar a asserção de tipo conforme visto no código fornecido:

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

Esta linha aciona o erro:

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

O problema surge porque mongoDoc["_id"] é uma interface{} que contém um valor do tipo primitivo.ObjectID. A asserção de tipo só pode ser executada em tipos primitivos a partir de valores de interface.

Para obter uma representação de string do primitivo.ObjectID, utilize o método Hex() do tipo primitivo.ObjectID. Este método recupera a representação hexadecimal dos bytes do ObjectId:

mongoId := mongoDoc["_id"]
stringObjectID := mongoId.(primitive.ObjectID).Hex()
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3