ホームページ  >  記事  >  バックエンド開発  >  mongo-go-driver を使用して _id でドキュメントを取得するにはどうすればよいですか?

mongo-go-driver を使用して _id でドキュメントを取得するにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-10-31 11:37:02721ブラウズ

How to Retrieve a Document by _id Using mongo-go-driver?

mongo-go-driver を使用した _id によるドキュメントの検索

_id フィールドによってドキュメントを取得しようとすると、戻り値が空の。考えられる原因の 1 つは、_id の ObjectID タイプの処理が正しくないことです。

応答の概要

提供されたコード スニペットでは、_id は BSON を保持するためのジェネリック タイプである bson.RawValue を使用して表されます。特別な解釈のないデータ。ただし、mongo-go-driver は、_id で検索するときに ObjectID を期待します。

ソリューション提案

この問題を解決するには、primitive.ObjectIDFromHex を使用して _id 文字列を ObjectID に変換します。以下に例を示します:

<code class="go">import (
    "github.com/mongodb/mongo-go-driver/bson"
    "github.com/mongodb/mongo-go-driver/mongo"
)

// ...

objID, _ := primitive.ObjectIDFromHex("5c7452c7aeb4c97e0cdb75bf")
value := collection.FindOne(ctx, bson.M{"_id": objID})</code>

これにより、指定された _id を持つ目的のドキュメントが返されます。

以上がmongo-go-driver を使用して _id でドキュメントを取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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