嘗試透過 _id 欄位擷取文件時,您可能會遇到傳回值為空的。一個潛在的原因是對 _id 的 ObjectID 類型的處理不正確。
在提供的程式碼片段中,_id 使用 bson.RawValue 表示,這是用於保存 BSON 的通用類型沒有任何具體解釋的資料。但是,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中文網其他相關文章!