메타데이터 항목 Python 참조

참고: 새로운 애플리케이션을 빌드하는 개발자는 NDB 클라이언트 라이브러리를 사용하는 것이 좋습니다. NDB 클라이언트 라이브러리는 이 클라이언트 라이브러리와 비교할 때 Memcache API를 통한 자동 항목 캐싱과 같은 여러 이점이 있습니다. 현재 이전 DB 클라이언트 라이브러리를 사용 중인 경우 DB에서 NDB로의 마이그레이션 가이드를 참조하세요.

모델 클래스 EntityGroup, Namespace, Kind, Property는 메타데이터 종류를 가져오거나 쿼리한 결과를 나타냅니다. 이러한 클래스 모두 google.appengine.ext.db.metadata 패키지에 정의되어 있습니다. 해당 용도에 대한 자세한 내용 및 예시는 메타데이터 페이지를 참조하세요.

도우미 함수

다음 도우미 함수를 사용하면 명시적인 쿼리 또는 get을 실행하지 않고도 메타데이터 정보를 가져올 수 있습니다.

get_entity_group_version(entity_or_key)

entity_or_key가 포함된 항목 그룹의 버전을 반환합니다. 이 버전은 항목 그룹이 변경될 때마다 증가합니다. 항목 그룹에 사용자가 확인할 수 있는 변경사항이 없어도 버전이 증가할 수 있습니다. 항목 그룹에 작성된 내용이 없는 경우 None을 반환할 수 있습니다.

경고: 항목 그룹 메타데이터 동작이 달라졌습니다. 항목 그룹 버전이 사용자 업데이트로부터 독립적으로 증가할 수 있습니다. 이전에는 항목 그룹 버전이 사용자 업데이트 시에만 증가했습니다. 기존 동작을 유지하려면 항목 그룹 버전 해결 방법을 사용합니다.

인수:

entity_or_key
원하는 버전의 키 또는 항목입니다.
get_namespaces(start=None, end=None)

네임스페이스 이름 목록을 반환합니다.

인수

start

None이 아니면 지정된 값보다 크거나 같은 네임스페이스 이름만 반환합니다.

종료

None이 아니면 지정된 값보다 작은 네임스페이스 이름만 반환합니다.

get_kinds(start=None, end=None)

항목 종류 이름 목록을 반환합니다.

인수

start

None이 아니면 지정된 값보다 크거나 같은 종류 이름만 반환합니다.

종료

None이 아니면 지정된 값보다 작은 종류 이름만 반환합니다.

get_properties_of_kind(kind, start=None, end=None)

지정된 종류에 대해 색인화된 속성 이름 목록을 반환합니다. 색인화되지 않은 속성은 포함되지 않습니다.

인수

kind

속성 이름이 요청된 종류입니다.

start

None이 아니면 지정된 값보다 크거나 같은 속성 이름만 반환합니다.

종료

None이 아니면 지정된 값보다 작은 속성 이름만 반환합니다.

get_representations_of_kind(kind, start=None, end=None)

지정된 종류의 각 색인화된 속성 이름을 해당 표현 목록에 매핑하는 사전을 반환합니다. 색인화되지 않은 속성은 포함되지 않습니다.

인수

kind

속성 표현이 요청된 종류입니다.

start

None이 아니면 지정된 값보다 크거나 같은 이름의 속성에 대한 표현만 반환합니다.

종료

None이 아니면 지정된 값보다 작은 이름의 속성 표현만 반환합니다.

EntityGroup 클래스

__entity_group__ 메타데이터의 모델입니다(HR Datastore에서만 사용 가능).

이 메타데이터에는 항목 그룹이 변경될 때마다 증가하는 숫자 __version__ 속성이 포함됩니다. 항목 그룹에 사용자가 확인할 수 있는 변경사항이 없어도 버전이 증가할 수 있습니다. 항목 그룹에 작성된 내용이 없는 경우 __entity_group__ 항목이 없을 수 있습니다.

속성

버전
버전 번호입니다.

클래스 메서드

key_for_entity(entity_or_key)
entity_or_key가 포함된 항목 그룹의 메타데이터 키를 반환합니다. 이 키를 인수로 사용해 get()을 실행하여 entity_or_key가 포함된 항목 그룹의 __entity_group__ 메타데이터 항목을 가져올 수 있습니다.

인수:

entity_or_key
원하는 __entity_group__ 키의 항목 또는 키입니다.

Namespace 클래스

Namespace 클래스는 네임스페이스 쿼리의 결과로 반환된 특수한 종류 __namespace__의 메타데이터 항목을 나타냅니다. 항목 키는 네임스페이스의 이름입니다. 단, 빈 문자열 ""로 지정된 기본 네임스페이스는 예외입니다. 이는 유효한 키 이름이 아니기 때문에 기본 네임스페이스는 숫자 ID 1인 키로 표시됩니다.

속성

Namespace 클래스의 인스턴스에는 다음 속성이 포함됩니다.

namespace_name

이 항목의 키로 지정된 네임스페이스의 이름을 반환합니다.

클래스 메서드

Namespace 클래스의 클래스 메서드는 다음과 같습니다.

key_for_namespace(네임스페이스)

지정된 네임스페이스의 __namespace__ 키를 반환합니다.

인수

namespace

키가 요청된 네임스페이스입니다.

key_to_namespace()

제공된 __namespace__ 키로 지정된 네임스페이스를 반환합니다.

인수

key

이름이 요청된 키입니다.

Kind 클래스

Kind 클래스는 종류 쿼리의 결과로 반환된 특수한 종류 __kind__의 메타데이터 항목을 나타냅니다. 항목 키는 항목 종류의 이름입니다.

속성

Kind 클래스의 인스턴스에는 다음 속성이 포함됩니다.

kind_name

이 항목의 키로 지정된 종류 이름을 반환합니다.

클래스 메서드

Kind 클래스의 클래스 메서드는 다음과 같습니다.

key_for_kind(종류)

지정된 종류의 __kind__ 키를 반환합니다.

인수

kind

키가 요청된 종류입니다.

key_to_kind()

제공된 __kind__ 키로 지정된 종류를 반환합니다.

인수

key

종류가 요청된 키입니다.

Property 클래스

Property 클래스는 속성 쿼리의 결과로 반환된 특수한 종류 __property__의 메타데이터 항목을 나타냅니다. K 종류의 P 속성을 나타내는 항목은 다음과 같이 빌드됩니다.

  • 항목 키에는 __property__ 종류 및 키 이름 P가 포함됩니다.
  • 상위 항목 키에는 __kind__ 종류 및 키 이름 K가 포함됩니다.

속성

Property 클래스의 인스턴스에는 다음과 같은 속성이 있습니다.

kind_name

이 항목의 키로 지정된 종류 이름을 반환합니다.

property_name

이 항목의 키로 지정된 속성 이름을 반환합니다.

클래스 메서드

Property 클래스의 클래스 메서드는 다음과 같습니다.

key_for_kind(종류)

지정된 종류의 __property__ 키에 대한 상위 키를 반환합니다.

인수

kind

상위 키가 요청된 종류입니다.

key_for_property(종류, 속성)

지정된 속성 및 종류의 __property__ 키를 반환합니다.

인수

kind

키가 요청된 종류입니다.

property

키가 요청된 속성입니다.

key_to_kind()

제공된 __property__ 키로 지정된 종류를 반환합니다.

인수

key

종류 이름이 요청된 키입니다.

key_to_property()

제공된 __property__ 키로 지정된 속성을 반환하거나 키에 종류만 지정된 경우 None을 반환합니다.

인수

key

속성 이름이 요청된 키입니다.