Menukar Primitive.ObjectID kepada String in Go
Apabila bekerja dengan MongoDB dalam Go menggunakan pemacu mongo, adalah perkara biasa untuk menghadapi senario di mana anda perlu menukar primitive.ObjectID kepada rentetan. Penukaran ini diperlukan untuk operasi tertentu, seperti memaparkan ID sebagai rentetan atau menggunakannya dalam sistem luaran.
Satu pendekatan biasa ialah menggunakan penegasan jenis, seperti ini:
mongoId := mongoDoc["_id"] stringObjectID := mongoId.(string)
Walau bagaimanapun, kod ini mungkin menimbulkan ralat jika nilai yang disimpan dalam mongoId sebenarnya bukan rentetan. Mesej ralat akan menunjukkan bahawa nilai antara muka adalah jenis primitif.ObjectID, bukan rentetan.
Untuk menukar primitif.ObjectID kepada rentetan dengan betul, anda perlu memahami bahawa nilai yang disimpan dalam mongoId sebenarnya adalah contoh jenis primitif.ObjectID yang dibalut dengan nilai antara muka. Untuk mengakses contoh primitive.ObjectID, anda boleh menggunakan penegasan jenis, seperti ini:
mongoId := mongoDoc["_id"].(primitive.ObjectID)
Kini, anda boleh menggunakan kaedah Hex() primitive.ObjectID untuk mendapatkan perwakilan hex bagi ID objek sebagai rentetan:
stringObjectID := mongoId.Hex()
Kaedah ini akan mengembalikan rentetan yang mewakili perwakilan heksadesimal 12 bait bagi primitive.ObjectID, yang boleh anda gunakan untuk tujuan yang anda inginkan.
Atas ialah kandungan terperinci Bagaimana untuk Menukar primitive.ObjectID kepada String dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!