Metadatenentitäten-Python-Referenz

Hinweis: Entwicklern von neuen Anwendungen wird dringend empfohlen, die NDB-Clientbibliothek zu verwenden. Diese bietet im Vergleich zur vorliegenden Clientbibliothek verschiedene Vorteile, z. B. das automatische Caching von Entitäten über die Memcache API. Wenn Sie derzeit die ältere DB-Clientbibliothek verwenden, finden Sie weitere Informationen im Leitfaden zur Migration von DB- zu NDB-Clientbibliotheken.

Die Modellklassen EntityGroup, Namespace, Kind und Property repräsentieren die Ergebnisse des Abrufens oder Abfragens von Metadatenarten. Diese Klassen sind alle im Paket google.appengine.ext.db.metadata definiert. Weitere Informationen und Beispiele zur Verwendung finden Sie auf der Seite Metadaten.

Hilfsfunktionen

Die folgenden Hilfsfunktionen stehen zum Erhalten von Metadateninformationen zur Verfügung, ohne eine explizite Abfrage oder ein explizites Abrufen (get) auszugeben:

get_entity_group_version(entity_or_key)

Gibt die Version der Entitätengruppe zurück, die entity_or_key enthält. Diese Version erhöht sich garantiert bei jeder Änderung der Entitätengruppe. Die Version kann auch erhöht werden, wenn keine für den Nutzer sichtbaren Änderungen an der Entitätengruppe vorhanden sind. None kann zurückgegeben werden, wenn nie in die Entitätengruppe geschrieben wurde.

Warnung: Metadaten der Entitätengruppe verhalten sich ab sofort anders. Die Version der Entitätengruppe kann sich unabhängig von Nutzer-Updates erhöhen. Zuvor wurde die Version der Entitätengruppe nur bei der Nutzeraktualisierung erhöht. Mithilfe der Problemumgehung für die Entitätengruppenversion können Sie das Legacy-Verhalten beibehalten.

Argumente:

entity_or_key
Ein Schlüssel oder eine Entität, deren Version Sie benötigen.
get_namespaces(start=None, end=None)

Gibt eine Liste von Namespace-Namen zurück.

Argumente

start

Liefern nur Namespace-Namen größer oder gleich dem angegebenen Wert, wenn nicht None.

end

Liefern nur Namespace-Namen, die kleiner als der angegebene Wert sind, wenn nicht None.

get_kinds(start=None, end=None)

Gibt eine Liste von Entitätstypnamen zurück.

Argumente

start

Liefern nur Artnamen größer oder gleich dem angegebenen Wert, wenn nicht None.

end

Liefern nur Artnamen, die kleiner als der angegebene Wert sind, wenn nicht None.

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

Liefert eine Liste indexierter Property-Namen für einen bestimmten Typ. Nicht indexierte Properties sind nicht enthalten.

Argumente

kind

Der Typ, dessen Property-Namen angefordert werden.

start

Liefert nur Attributnamen größer oder gleich dem angegebenen Wert, wenn nicht None.

end

Liefern nur Attributnamen, die kleiner als der angegebene Wert sind, wenn nicht None.

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

Liefert ein Dictionary, das jeden indexierten Property-Namen für einen bestimmten Typ einer Liste seiner Darstellungen zuordnet. Nicht indexierte Properties sind nicht enthalten.

Argumente

kind

Der Typ, dessen Property-Darstellungen angefordert werden.

start

Liefern nur Darstellungen für Attribute, deren Namen größer oder gleich dem angegebenen Wert sind, wenn nicht None.

end

Liefern nur Darstellungen für Attribute, deren Namen kleiner als der angegebene Wert sind, wenn nicht None.

EntityGroup-Klasse

Modell für Metadaten vom Typ __entity_group__ (nur im HR-Datenspeicher verfügbar).

Diese Metadaten enthalten das numerische Attribut __version__, das bei jeder Änderung an der Entitätengruppe garantiert zunimmt. Die Version kann auch erhöht werden, wenn keine für den Nutzer sichtbaren Änderungen an der Entitätengruppe vorhanden sind. Die Entität __entity_group__ ist möglicherweise nicht vorhanden, wenn in die Entitätengruppe nie geschrieben wurde.

Attribut

version
Die Versionsnummer.

Klassenmethode

key_for_entity(entity_or_key)
Gibt den Metadatenschlüssel für die Entitätengruppe zurück, die entity_or_key enthält. Verwenden Sie diesen Schlüssel als Argument zum Abrufen (get()) der Metadatenentität __entity_group__ für die Entitätengruppe, die entity_or_key enthält.

Argumente:

entity_or_key
Ein Schlüssel oder eine Entität, deren __entity_group__-Schlüssel Sie benötigen.

Namespace-Klasse

Die Klasse Namespace stellt eine Metadatenentität der speziellen Art __namespace__ dar, die als Ergebnis einer Attributabfrage zurückgegeben wird. Der Schlüssel der Entität ist der Name des Namespace. Eine Ausnahme ist der Standard-Namespace, der mit dem leeren String "" angegeben wird. Da dies kein gültiger Schlüsselname ist, wird der Standard-Namespace durch einen Schlüssel mit der numerischen ID 1 eingegeben.

Attribut

Instanzen der Klasse Namespace haben das folgende Attribut:

namespace_name

Liefert den Namen des Namespace, der vom Schlüssel dieser Entität angegeben wird.

Klassenmethoden

Die Klasse Namespace hat die folgenden Klassenmethoden:

key_for_namespace(namespace)

Gibt den __namespace__-Schlüssel für den angegebenen Namespace zurück

Argument

namespace

Der Namespace, dessen Schlüssel angefordert wird.

key_to_namespace(key)

Gibt den Namespace zurück, der durch einen bestimmten __namespace__-Schlüssel angegeben wird.

Argument

key

Der Schlüssel, dessen Name angefordert wird.

Art-Klasse

Die Klasse Kind stellt eine Metadatenentität der speziellen Art __kind__ dar, die als Ergebnis einer Artabfrage zurückgegeben wird. Der Schlüssel der Entität ist der Name des Entitätstyps.

Attribut

Instanzen der Klasse Kind haben das folgende Attribut:

kind_name

Liefert den vom Schlüssel dieser Entität angegebenen Typnamen.

Klassenmethoden

Die Klasse Kind hat die folgenden Klassenmethoden:

key_for_kind(kind)

Gibt den __kind__-Schlüssel für die angegebene Art zurück

Argument

kind

Der Typ, dessen Schlüssel angefordert wird.

key_to_kind(key)

Gibt die Art zurück, die durch einen bestimmten __kind__-Schlüssel angegeben wurde.

Argument

key

Der Schlüssel, dessen Typ angefordert wird.

Attributklasse

Die Klasse Property stellt eine Metadatenentität der speziellen Art __property__ dar, die als Ergebnis einer Attributabfrage zurückgegeben wird. Die Entität zur Darstellung von Attribut P der Art K wird so erstellt:

  • Der Entitätsschlüssel hat die Art __property__ und den Schlüsselnamen P..
  • Der Schlüssel der übergeordneten Entität hat die Art __kind__ und den Schlüsselnamen K..

Eigenschaften

Instanzen der Klasse Property haben die folgenden Attribute:

kind_name

Gibt den vom Schlüssel dieser Entität angegebenen Typnamen zurück.

property_name

Gibt den vom Schlüssel dieser Entität angegebenen Property-Namen zurück.

Klassenmethoden

Die Klasse Property hat die folgenden Klassenmethoden:

key_for_kind(kind)

Gibt den übergeordneten Schlüssel für __property__-Schlüssel der angegebenen Art zurück.

Argument

kind

Der Typ, dessen übergeordneter Schlüssel angefordert wird.

key_for_property(kind, property)

Gibt den __property__-Schlüssel für das angegebene Attribut und die angegebene Art zurück.

Argumente

kind

Der Typ, dessen Schlüssel angefordert wird.

property

Die Property, deren Schlüssel angefordert wird.

key_to_kind(key)

Gibt die Art zurück, die durch einen bestimmten __property__-Schlüssel angegeben wurde.

Argument

key

Der Schlüssel, dessen Typname angefordert wird.

key_to_property(key)

Gibt das Attribut zurück, das durch einen bestimmten __property__-Schlüssel angegeben wurde, oder None, wenn der Schlüssel nur eine Art angegeben hat.

Argument

key

Der Schlüssel, dessen Attributname angefordert wird.