2011-04-30 12 views
7

Tengo un siguiente modelo en la aplicación appengine de Google.¿Cómo encontrar entradas que no tienen StringListProperty vacía?

class TestModel(db.Model): 
    names = db.StringListProperty(required=False) 

Por lo tanto, quiero conseguir entradas que tiene no está vacío en la propiedad nombres. Lo intenté así

TestModel.all().filter('names !=', []) 

Pero plantea la excepción: BadValueError: Filtrado en las listas no es compatible

Cómo puedo filtrar ella? o ¿debo verificar uno por uno como sigue?

for entry in TestModel.all(): 
    if len(entry.names) > 0: 
    result.append(entry) 

Respuesta

6

Prueba esto:

TestModel.all().filter('names >=', None)

esto le dará todas las entidades con al menos un valor establecido para los nombres, es decir, todos los valores en el índice.

Cuestiones relacionadas