Go에서 Primitive.ObjectID를 문자열로 변환
mongo-driver를 사용하여 Go에서 MongoDB로 작업할 때 일반적으로 다음과 같은 시나리오가 발생합니다. 여기서는primitive.ObjectID를 문자열로 변환해야 합니다. 이 변환은 ID를 문자열로 표시하거나 외부 시스템에서 사용하는 등의 특정 작업에 필요합니다.
한 가지 일반적인 접근 방식은 다음과 같이 유형 어설션을 사용하는 것입니다.
mongoId := mongoDoc["_id"] stringObjectID := mongoId.(string)
그러나 mongoId에 저장된 값이 실제로 문자열이 아닌 경우 이 코드는 오류를 발생시킬 수 있습니다. 오류 메시지는 인터페이스 값이 문자열이 아닌 기본.ObjectID 유형임을 나타냅니다.
primitive.ObjectID를 문자열로 올바르게 변환하려면 mongoId에 저장된 값이 실제로는 인터페이스 값에 래핑된 원시.ObjectID 유형의 인스턴스입니다. 원시적.ObjectID 인스턴스에 액세스하려면 다음과 같은 유형 어설션을 사용할 수 있습니다.
mongoId := mongoDoc["_id"].(primitive.ObjectID)
이제 원시적.ObjectID의 Hex() 메소드를 사용하여 객체 ID의 16진수 표현을 다음과 같이 얻을 수 있습니다. 문자열:
stringObjectID := mongoId.Hex()
이 메소드는 원하는 목적에 사용할 수 있는 기본.ObjectID의 12바이트 16진수 표현을 나타내는 문자열을 반환합니다.
위 내용은 Go에서 원시 객체 ID를 문자열로 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!