الفصل 6: إدراج الوثيقة في Golang MongoDB
إدراج وثيقة
result, err := collection.InsertOne(
context.Background(), // المعلمة السياقية
bson.D{ // تعريف وثيقة JSON باستخدام bson.D
{"item", "قماش"},
{"qty", 100},
{"tags", bson.A{"قطن"}},
{"size", bson.D{
{"h", 28},
{"w", 35.5},
{"uom", "سم"},
}},
})
// الحصول على معرف فريد تم إنشاؤه للوثيقة
id := result.InsertedID
نصيحة: إذا كنت غير ملم بتمثيل بيانات Golang MongoDB ، يرجى الرجوع إلى القسم "نموذج بيانات Golang MongoDB" هنا.
ما يعادل إدراج وثيقة JSON التالية:
{
"item": "قماش",
"qty": 100,
"tags": ["قطن"],
"size": {
"h": 28,
"w": 35.5,
"uom": "سم"
}
}
استعلام الوثيقة المدرجة حديثًا
cursor, err := collection.Find(
context.Background(),
bson.D{{"item", "قماش"}}, // التعبير المكافئ: {"item": "قماش"}
)
إدراج جماعي
result, err := collection.InsertMany(
context.Background(),
[]interface{}{ // قم بتمرير مصفوفة من الوثائق ، ثم قم بإدراج بيانات وثيقة ثلاثة
bson.D{ // بيانات وثيقة 1
{"item", "يوميات"},
{"qty", int32(25)},
{"tags", bson.A{"فارغ", "أحمر"}},
{"size", bson.D{
{"h", 14},
{"w", 21},
{"uom", "سم"},
}},
},
bson.D{ // بيانات وثيقة 2
{"item", "سجادة"},
{"qty", int32(25)},
{"tags", bson.A{"رمادي"}},
{"size", bson.D{
{"h", 27.9},
{"w", 35.5},
{"uom", "سم"},
}},
},
bson.D{ // بيانات وثيقة 3
{"item", "باد الماوس"},
{"qty", 25},
{"tags", bson.A{"جيل", "أزرق"}},
{"size", bson.D{
{"h", 19},
{"w", 22.85},
{"uom", "سم"},
}},
},
})
الاستعلام عن جميع الوثائق
cursor, err := collection.Find(
context.Background(),
bson.D{}, // قم بتمرير شرط استعلام فارغ
)