Field 클래스

Field 클래스는 메시지에 정의된 모든 필드의 기본 클래스입니다. 개발자가 이 클래스를 확장할 수 없습니다.

Fieldprotorpc.messages 모듈에서 제공됩니다.

생성자

Field 클래스의 생성자는 다음과 같이 정의됩니다.

class Field(message_type, number, [required=False | repeated=False], variant=None, default=None)

Field 인스턴스를 초기화합니다. Field의 각 하위 클래스는 다음을 정의해야 합니다.

VARIANTS
해당 필드에서 허용되는 변형 유형 집합입니다.
DEFAULT_VARIANT
생성자에서 지정되지 않은 경우, 기본 변형 유형입니다.
인수
숫자
필드 번호입니다. 메시지 클래스마다 고유해야 합니다.
required=False
이 필드가 필수인지 여부입니다. repeated 인수와 상호 배타적입니다. required를 사용하는 경우 repeated를 지정하지 마세요.
repeated=False
이 필드가 반복되는지 여부입니다. required 인수와 상호 배타적입니다. repeated=True를 사용하는 경우 required=True를 지정하지 마세요.
variant=None
주로 프로토콜 버퍼에 사용되는 추가 인코딩 정보를 제공합니다. 이러한 변형은 descriptor.proto의 Type 값에 매핑됩니다. 권장사항은 기본값을 사용하는 것이지만 32비트, 64비트, 부호 없는 형식 등의 값을 지정할 수 있습니다.
default=None
기본 요청에 없는 경우, 필드의 기본값입니다.

참고: 반복 필드 또는 메시지 필드에는 기본값이 허용되지 않습니다.

다음과 같은 예외가 발생합니다.

클래스 속성

FieldList 클래스에는 속성이 한 개 있습니다.

default()
필드의 기본값입니다.

인스턴스 메소드

FieldList 인스턴스에는 다음과 같은 메소드가 있습니다.

validate(value)
필드에 할당된 값 유효성을 검사합니다. 인수
value
평가할 값입니다.

값이 예상 유형이 아닌 경우 ValidationError가 발생합니다.

validate_default_element(value)

기본 필드에 할당된 값 유효성을 검사합니다. 단일 요소에만 해당됩니다.

순환 정의 참조의 경우, 일부 필드는 필요한 기본 유형의 지연된 확인을 허용할 수 있습니다. 이런 경우, 기본값은 모든 메시지 클래스를 정의한 후 필요할 때 확인되는 자리표시자일 수 있습니다.

인수
value
유효성을 검사할 기본값입니다.

값이 예상 유형이 아닌 경우 ValidationError가 발생합니다.

validate_default(value)

필드의 기본값 유효성을 검사합니다.

인수
value
유효성을 검사할 기본값입니다.

값이 예상 유형이 아닌 경우 ValidationError가 발생합니다.

message_definition()

이 필드 정의를 포함하는 메시지 정의를 가져옵니다. Field가 포함된 Message 객체의 정의를 반환합니다. Field가 메시지 클래스 외부에 정의된 경우 None을 반환합니다.

값이 예상 유형이 아닌 경우 ValidationError가 발생합니다.