ホームページ > バックエンド開発 > Golang > MongoDB ドライバーを使用して Go で「primitive.ObjectID」を文字列に変換する方法?

MongoDB ドライバーを使用して Go で「primitive.ObjectID」を文字列に変換する方法?

DDD
リリース: 2024-11-07 22:15:03
オリジナル
693 人が閲覧しました

How to Convert a `primitive.ObjectID` to a String in Go with the MongoDB Driver?

MongoDB ドライバーを使用した Go で Primitive.ObjectID を String に変換する

go.mongodb.org/mongo-driver から MongoDB ドライバーを操作する場合、プリミティブを変換します。 ObjectID を文字列に変換するのは難しい場合があります。

問題

mongoDoc["_id"].(string) を使用して mongo-driver.ObjectID を文字列に型アサートしようとすると、実行時パニックが発生します。 :

panic: interface conversion: interface {} is primitive.ObjectID, not string
ログイン後にコピー

解決策

このエラーは、mongoDoc["_id"] が、具体的な値 primitive.ObjectID を持つ、interface{} 型のインターフェース値を保持しているために発生します。文字列に正常に変換するには、インターフェイス値ではなく、primitive.ObjectID 値自体を型アサートする必要があります。

mongoId := mongoDoc["_id"].(primitive.ObjectID)
stringObjectID := mongoId.Hex()
ログイン後にコピー

primitive.ObjectID 型の Hex() メソッドは、その値の 16 進表現を提供します。バイト。

以上がMongoDB ドライバーを使用して Go で「primitive.ObjectID」を文字列に変換する方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート