Konvertieren von Primitive.ObjectID in String in Golang
In Go verwaltet der Mongo-Treiber von go.mongodb.org/mongo-driver MongoDB-Datentypen. Das Konvertieren des primitiven.ObjectID-Typs in eine Zeichenfolge erfordert jedoch einen bestimmten Ansatz.
Beim Versuch, die Typzusicherung wie im bereitgestellten Code zu verwenden:
mongoId := mongoDoc["_id"] stringObjectID := mongoId.(string)
Diese Zeile löst den Fehler aus:
panic: interface conversion: interface {} is primitive.ObjectID, not string
Das Problem tritt auf weil mongoDoc["_id"] eine Schnittstelle{} ist, die einen Wert vom Typ primitive.ObjectID enthält. Die Typzusicherung kann nur für primitive Typen aus Schnittstellenwerten durchgeführt werden.
Um eine Zeichenfolgendarstellung der primitive.ObjectID zu erhalten, verwenden Sie die Hex()-Methode des Typs primitive.ObjectID. Diese Methode ruft die Hex-Darstellung der Bytes der ObjectId ab:
mongoId := mongoDoc["_id"] stringObjectID := mongoId.(primitive.ObjectID).Hex()
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3