Looks like a fine solution. App Engine DB has its limitations, it leaves a lot of work for you. I notice you are using DB; have you considered migrating to NDB? It's the next generation of DB: https://developers.google.com/appengine/docs/python/ndb/.
NDB addresses a lot of the shortcomings of DB. For one thing, it supports "OR" queries and even nested combinations of AND and OR: https://developers.google.com/appengine/docs/python/ndb/queries#nest_and_or
If you're finding yourself spending a lot of time writing code just to do basic queries on DB, the move could be a good investment.