google app engine - ¿Necesita ordenar por propiedades en la propiedad de referencia, alguna buena solución?
google-app-engine join (1)
No hay equivalente para esa consulta en el almacén de datos. Algunos puntos:
- No puedes seleccionar una sola propiedad.
SELECT
siempre esSELECT *
(selecciona una entidad completa). - No puedes hacer uniones. Debe desnormalizar sus modelos para adaptarse a las consultas que realizará o realizar múltiples consultas.
Entonces, para lograr su objetivo, debe tener last_login
almacenado en Relationship
, o tener un tercer modelo para servir como índice para esa consulta específica.
Digamos que tengo 2 tipos:
class Account(db.Model):
name = db.StringProperty()
create_time = db.DataTimeProperty()
last_login = db.DateTimeProperty()
last_update = db.DataTimeProperty()
class Relationship(db.Model)
owner = db.ReferenceProperty(Account)
target = db.ReferenceProperty(Account)
type = db.IntegerProperty()
Quiero obtener la equivalencia de la siguiente consulta:
SELECT target
FROM Relationship
WHERE owner = :key AND type = :type
ORDERBY target.last_login DESC
¿Como hacer eso?
referencia: http://www.mail-archive.com/[email protected]/msg15878.html