Menukar Primitif.ObjectID kepada Rentetan dalam Golang
Dalam Go, pemandu mongo dari go.mongodb.org/mongo-driver mengurus Jenis data MongoDB. Walau bagaimanapun, menukar jenis primitive.ObjectID kepada rentetan memerlukan pendekatan khusus.
Apabila cuba menggunakan penegasan jenis seperti yang dilihat dalam kod yang disediakan:
mongoId := mongoDoc["_id"] stringObjectID := mongoId.(string)
Baris ini mencetuskan ralat:
panic: interface conversion: interface {} is primitive.ObjectID, not string
Isu timbul kerana mongoDoc["_id"] ialah antara muka{} yang mengandungi nilai jenis primitif.ObjectID. Penegasan jenis hanya boleh dilakukan pada jenis primitif daripada nilai antara muka.
Untuk mendapatkan perwakilan rentetan primitif.ObjectID, gunakan kaedah Hex() bagi jenis primitive.ObjectID. Kaedah ini mendapatkan semula perwakilan heks bagi bait ObjectId:
mongoId := mongoDoc["_id"] stringObjectID := mongoId.(primitive.ObjectID).Hex()
Atas ialah kandungan terperinci Bagaimanakah anda menukar primitive.ObjectID kepada rentetan dalam Golang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!