Riferimento a Python per le entità di metadati

Nota: Gli sviluppatori che creano nuove applicazioni sono vivamente incoraggiati a utilizzare il Libreria client NDB, che offre numerosi vantaggi rispetto a questa libreria client, come la memorizzazione automatica nella cache delle entità tramite tramite Google Cloud CLI o tramite l'API Compute Engine. Se al momento utilizzi la libreria client DB precedente, leggi la guida alla migrazione da DB a NDB

Le classi del modello EntityGroup, Namespace, Kind, e Property che rappresentano i risultati del recupero o dell'esecuzione di query su tipi di metadati. Queste classi sono tutte definite nel pacchetto google.appengine.ext.db.metadata. Per ulteriori informazioni ed esempi di utilizzo, consulta la pagina Metadati.

Funzioni di supporto

Per ottenere informazioni sui metadati senza emettere una query o un get esplicito, sono disponibili le seguenti funzioni di supporto:

get_entity_group_version(entity_or_key)

Restituisce la versione del gruppo di entità contenente entity_or_key. Questo la versione aumenterà a ogni modifica all'entità gruppo. La versione può aumentare anche in assenza di modifiche visibili dall'utente al gruppo di entità. Può restituire None se non è mai stata eseguita alcuna scrittura nel gruppo di entità.

Avviso: il comportamento dei metadati del gruppo di entità ora è diverso. L'entità la versione del gruppo può aumentare indipendentemente dagli aggiornamenti dell'utente. In precedenza, la versione del gruppo di entità aumentava solo in caso di aggiornamento dell'utente. Per mantenere il comportamento precedente, utilizza la soluzione alternativa per la versione del gruppo di entità.

Argomenti:

entity_or_key
una chiave o un'entità di cui vuoi la versione.
get_namespaces(start=Nessuno, end=Nessuno)

Restituisce un elenco di nomi degli spazi dei nomi.

Argomenti

avvia

Se non è None, restituisce solo i nomi dello spazio dei nomi maggiori o uguali al valore specificato.

fine

Se non None, restituisce solo i nomi dello spazio dei nomi inferiori al valore specificato.

get_kinds(start=None, end=None)

Restituisce un elenco di nomi di tipi di entità.

Argomenti

start

Se non è None, restituisce solo i nomi di tipo maggiori o uguali al valore specificato.

fine

Se non è None, restituisce solo i nomi di tipo inferiori al valore specificato.

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

Restituisce un elenco di nomi di proprietà indicizzati per un tipo specificato. Le proprietà non indicizzate non sono incluse.

Argomenti

kind

Il tipo di cui sono richiesti i nomi delle proprietà.

avvia

Se non è None, restituisce solo i nomi delle proprietà maggiori o uguali al valore specificato.

fine

Se non None, restituisce solo i nomi delle proprietà inferiori al valore specificato.

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

Restituisce un dizionario che mappa ogni nome di proprietà indicizzato per un tipo specificato a un elenco delle relative rappresentazioni. Le proprietà non indicizzate non sono incluse.

Argomenti

gentile

Il tipo di cui sono richieste le rappresentazioni delle proprietà.

avvia

Se non è None, restituisce solo le rappresentazioni delle proprietà i cui nomi sono maggiori o uguali al valore specificato.

end

Se non None, restituisce solo le rappresentazioni per le proprietà i cui nomi sono inferiori al valore specificato.

La classe EntityGroup

Modello per i metadati __entity_group__ (disponibile solo nel datastore RU).

Questi metadati contengono un valore numerico __version__ una proprietà che viene garantita aumentare a ogni modifica al gruppo di entità. La versione può aumentare anche in assenza di modifiche visibili all'utente al gruppo di entità. La L'entità __entity_group__ potrebbe non esistere in cui non è mai stato scritto.

Proprietà

version
Il numero di versione

Metodo della classe

key_for_entity(entity_or_key)
Restituisci la chiave dei metadati per il gruppo di entità contenente entity_or_key. Usa questa chiave come argomento per get() il __entity_group__ l'entità metadati gruppo di entità contenente entity_or_key.

Argomenti:

entity_or_key
Una chiave o un'entità il cui __entity_group__ chiave desiderata.

La classe dello spazio dei nomi

La classe Namespace rappresenta un'entità di metadati di tipo speciale __namespace__, restituita come risultato di un nello spazio dei nomi. La chiave dell'entità è il nome dello spazio dei nomi. Un'eccezione è lo spazio dei nomi predefinito designato dalla stringa vuota "": poiché non si tratta di un nome di chiave valido, lo spazio dei nomi predefinito è rappresentato da una chiave con ID numerico 1.

Proprietà

Le istanze della classe Namespace hanno la seguente proprietà:

namespace_name

Restituisce il nome dello spazio dei nomi specificato dalla chiave di questa entità.

Metodi di classe

La classe Namespace ha i seguenti metodi di classe:

key_for_namespace(spazio dei nomi)

Restituisce la chiave __namespace__ per lo spazio dei nomi specificato.

Argomento

namespace

Lo spazio dei nomi di cui è richiesta la chiave.

key_to_namespace(chiave)

Restituisce lo spazio dei nomi specificato da una determinata chiave __namespace__.

Argomento

chiave

La chiave di cui è richiesto il nome.

La classe Kind

La classe Kind rappresenta un'entità di metadati del tipo speciale __kind__, restituita come risultato di una query sul tipo. La chiave dell'entità è il nome del tipo di entità.

Proprietà

Le istanze della classe Kind hanno la seguente proprietà:

kind_name

Restituisce il nome del tipo specificato dalla chiave di questa entità.

Metodi di classe

La classe Kind prevede i seguenti metodi:

key_for_kind(kind)

Restituisce la chiave __kind__ per il tipo specificato.

Argomento

kind

Il tipo di cui viene richiesta la chiave.

key_to_kind(key)

Restituisce il tipo specificato da una determinata chiave __kind__.

Argomento

chiave

La chiave di cui è richiesto il tipo.

La classe Property

La classe Property rappresenta un'entità di metadati di tipo speciale __property__, restituita come risultato di un query sulla proprietà. L'entità che rappresenta la proprietà P di tipo K viene creata come segue:

  • La chiave dell'entità ha il tipo __property__ e il nome della chiave P.
  • La chiave dell'entità principale ha il tipo __kind__ e il nome della chiave K.

Proprietà

Le istanze della classe Property hanno le seguenti proprietà:

kind_name

Restituisce il nome del tipo specificato dalla chiave di questa entità.

property_name

Restituisce il nome della proprietà specificato dalla chiave di questa entità.

Metodi di classe

La classe Property prevede i seguenti metodi:

key_for_kind(kind)

Restituisce la chiave padre per le chiavi __property__ del tipo specificato.

Argomento

kind

Il tipo di cui è richiesta la chiave principale.

key_for_property(kind, property)

Restituisce la chiave __property__ per la proprietà e il tipo specificati.

Argomenti

kind

Il tipo di cui viene richiesta la chiave.

proprietà

La proprietà di cui è stata richiesta la chiave.

key_to_kind(key)

Restituisce il tipo specificato da una determinata chiave __property__.

Argomento

chiave

La chiave di cui è richiesto il nome del tipo.

key_to_property(key)

Restituisce la proprietà specificata da una determinata chiave __property__ o None se la chiave specificava solo un tipo.

Argomento

chiave

La chiave di cui è richiesto il nome della proprietà.