Nota: Se recomienda encarecidamente a los desarrolladores que creen aplicaciones nuevas que usen la biblioteca de cliente de NDB, que ofrece varias ventajas en comparación con esta biblioteca de cliente, como el almacenamiento automático en caché de entidades mediante la API Memcache. Si actualmente usas la biblioteca de cliente de DB anterior, consulta la guía de migración de DB a NDB.
Las clases de modelo EntityGroup
, Namespace
, Kind
, Property
y representan los resultados de obtener o consultar tipos de metadatos.
Todas estas clases se definen en el paquete
google.appengine.ext.db.metadata
. Consulta la página Metadatos para obtener más información y ejemplos de su uso.
Funciones auxiliares
Las siguientes funciones auxiliares están disponibles para obtener metadatos sin enviar una consulta o una solicitud GET explícita:
- get_entity_group_version(entity_or_key)
-
Devuelve la versión del grupo de entidades que contiene
entity_or_key
. Esta versión aumenta con cada cambio que se haga en el grupo de entidades. La versión puede aumentar aunque no haya cambios visibles para el usuario en el grupo de entidades. Puede devolverNone
si el grupo de entidades nunca se ha escrito.Advertencia: El comportamiento de los metadatos de grupos de entidades ha cambiado. La versión del grupo de entidades puede aumentar independientemente de las actualizaciones de los usuarios. Anteriormente, la versión del grupo de entidades solo aumentaba cuando se actualizaba el usuario. Para mantener el comportamiento antiguo, usa la solución alternativa de la versión del grupo de entidades.
Argumentos:
- entity_or_key
- una clave o una entidad de la que quieras obtener la versión.
- get_namespaces(start=None, end=None)
-
Devuelve una lista de nombres de espacios de nombres.
Argumentos
- start
-
Si no es
None
, devuelve solo los nombres de espacio de nombres que sean mayores o iguales que el valor especificado. - end
-
Si no es
None
, devuelve solo los nombres de espacio de nombres inferiores al valor especificado.
- get_kinds(start=None, end=None)
-
Devuelve una lista de nombres de tipos de entidad.
Argumentos
- start
-
Si no es
None
, devuelve solo los nombres de tipo que sean mayores o iguales que el valor especificado. - end
-
Si no es así
None
, devuelve solo los nombres de tipo inferiores al valor especificado.
- get_properties_of_kind(kind, start=None, end=None)
-
Devuelve una lista de nombres de propiedades indexadas de un tipo específico. No se incluyen las propiedades sin indexar.
Argumentos
- kind
-
El tipo cuyos nombres de propiedad se solicitan.
- start
-
Si no es
None
, devuelve solo los nombres de propiedad que sean mayores o iguales que el valor especificado. - end
-
Si no es
None
, devuelve solo los nombres de las propiedades que sean inferiores al valor especificado.
- get_representations_of_kind(kind, start=None, end=None)
-
Devuelve un diccionario que asigna cada nombre de propiedad indexada de un tipo especificado a una lista de sus representaciones. No se incluyen las propiedades sin indexar.
Argumentos
- kind
-
El tipo cuyas representaciones de propiedad se solicitan.
- start
-
Si no es
None
, devuelve solo las representaciones de las propiedades cuyos nombres sean mayores o iguales que el valor especificado. - end
-
Si no es
None
, devuelve solo las representaciones de las propiedades cuyos nombres sean inferiores al valor especificado.
- version
- Número de versión
- key_for_entity(entity_or_key)
- Devuelve la clave de metadatos del grupo de entidades que contiene
entity_or_key
. Usa esta clave como argumento deget()
la__entity_group__
entidad de metadatos de la entidad de grupo que contiene entity_or_key.Argumentos:
- entity_or_key
- una clave o una entidad cuya
__entity_group__
clave quieras obtener.
- namespace_name
-
Devuelve el nombre del espacio de nombres especificado por la clave de esta entidad.
- key_for_namespace(namespace)
-
Devuelve la clave
__namespace__
del espacio de nombres especificado.Argumento
- namespace
-
Espacio de nombre cuya clave se solicita.
- key_to_namespace(key)
-
Devuelve el espacio de nombres especificado por una clave
__namespace__
determinada.Argumento
- clave
-
Clave cuyo nombre se solicita.
- kind_name
-
Devuelve el nombre del tipo especificado por la clave de esta entidad.
- key_for_kind(kind)
-
Devuelve la clave
__kind__
del tipo especificado.Argumento
- kind
-
Tipo cuya clave se solicita.
- key_to_kind(key)
-
Devuelve el tipo especificado por una
__kind__
clave determinada.Argumento
- clave
-
Clave cuyo tipo se solicita.
- La clave de la entidad tiene el tipo
__property__
y el nombre de clave P. - La clave de la entidad superior tiene el tipo
__kind__
y el nombre de clave K. - kind_name
-
Devuelve el nombre del tipo especificado por la clave de esta entidad.
- property_name
-
Devuelve el nombre de la propiedad especificada por la clave de esta entidad.
- key_for_kind(kind)
-
Devuelve la clave principal de las claves
__property__
del tipo especificado.Argumento
- kind
-
Tipo cuya clave principal se solicita.
- key_for_property(kind, property)
-
Devuelve la clave
__property__
de la propiedad y el tipo especificados.Argumentos
- kind
-
Tipo cuya clave se solicita.
- property
-
Propiedad cuya clave se solicita.
- key_to_kind(key)
-
Devuelve el tipo especificado por una
__property__
clave determinada.Argumento
- clave
-
Clave cuyo nombre de tipo se solicita.
- key_to_property(key)
-
Devuelve la propiedad especificada por una clave
__property__
determinada oNone
si la clave solo especifica un tipo.Argumento
- clave
-
Clave cuyo nombre de propiedad se solicita.
Clase EntityGroup
Modelo de metadatos de __entity_group__
(solo disponible en el almacén de datos de RR. HH.).
Estos metadatos contienen una propiedad numérica __version__
que aumenta
con cada cambio que se haga en el grupo de entidades. La versión puede aumentar
aunque no haya cambios visibles para el usuario en el grupo de entidades. Es posible que la entidad __entity_group__
no exista si nunca se ha escrito en el grupo de entidades.
Propiedad
Método de clase
Clase Namespace
La clase Namespace
representa una entidad de metadatos del tipo especial __namespace__
, que se devuelve como resultado de una
consulta de espacio de nombres.
La clave de la entidad es el nombre del espacio de nombres. (La excepción es el espacio de nombres predeterminado, que se designa mediante la cadena vacía ""
. Como no es un nombre de clave válido, el espacio de nombres predeterminado se representa mediante una clave con el ID numérico 1
).
Propiedad
Las instancias de la clase Namespace
tienen la siguiente propiedad:
Métodos de clase
La clase Namespace
tiene los siguientes métodos de clase:
The Kind Class
La clase Kind
representa una entidad de metadatos del tipo especial __kind__
, que se devuelve como resultado de una
consulta de tipo.
La clave de la entidad es el nombre del tipo de entidad.
Propiedad
Las instancias de la clase Kind
tienen la siguiente propiedad:
Métodos de clase
La clase Kind
tiene los siguientes métodos de clase:
La clase Property
La clase Property
representa una entidad de metadatos del tipo especial __property__
, que se devuelve como resultado de una
consulta de propiedad.
La entidad que representa la propiedad P de tipo K se crea de la siguiente manera:
Propiedades
Las instancias de la clase Property
tienen las siguientes propiedades:
Métodos de clase
La clase Property
tiene los siguientes métodos de clase: