ホームページ >バックエンド開発 >Golang >Golang で primitive.ObjectID を文字列に変換するにはどうすればよいですか?

Golang で primitive.ObjectID を文字列に変換するにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-11-10 03:16:02756ブラウズ

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

Golang で Primitive.ObjectID を文字列に変換する

Go では、go.mongodb.org/mongo-driver の mongo-driver が以下を管理します。 MongoDB のデータ型。ただし、primitive.ObjectID 型を文字列に変換するには、特定のアプローチが必要です。

提供されたコードにあるように型アサーションを使用しようとすると、

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

この行によりエラーが発生します。

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

この問題は、mongoDoc["_id"] が type の値を含むインターフェースであるために発生します。{}プリミティブ.オブジェクトID。型アサーションは、インターフェイス値からのプリミティブ型に対してのみ実行できます。

primitive.ObjectID の文字列表現を取得するには、primitive.ObjectID 型の Hex() メソッドを利用します。このメソッドは、ObjectId のバイトの 16 進表現を取得します:

mongoId := mongoDoc["_id"]
stringObjectID := mongoId.(primitive.ObjectID).Hex()

以上がGolang で primitive.ObjectID を文字列に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。