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()
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