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
.
- version
- Die Versionsnummer.
- 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_name
-
Liefert den Namen des Namespace, der vom Schlüssel dieser Entität angegeben wird.
- key_for_namespace(namespace)
-
Gibt den
__namespace__
-Schlüssel für den angegebenen Namespace zurückArgument
- 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.
- kind_name
-
Liefert den vom Schlüssel dieser Entität angegebenen Typnamen.
- key_for_kind(kind)
-
Gibt den
__kind__
-Schlüssel für die angegebene Art zurückArgument
- 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.
- 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.. - 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.
- 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, oderNone
, wenn der Schlüssel nur eine Art angegeben hat.Argument
- key
-
Der Schlüssel, dessen Attributname angefordert wird.
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
Klassenmethode
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:
Klassenmethoden
Die Klasse Namespace
hat die folgenden Klassenmethoden:
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:
Klassenmethoden
Die Klasse Kind
hat die folgenden Klassenmethoden:
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:
Attribute
Instanzen der Klasse Property
haben die folgenden Attribute:
Klassenmethoden
Die Klasse Property
hat die folgenden Klassenmethoden: