python - How to identify objects with broken reference properties in google app engine -


how correctly check broken reference properties in google app engine?

example:

class user (db.model):     username = db.stringproperty(multiline=false) class foo (db.model):     user = db.referenceproperty(user, collection_name="user_foo") 
  1. a user object created.
  2. a foo object created.
  3. the corresponding reference property in user deleted.

as suggested daniel roseman in comments:

"iterate through foos , access item.user, , [check] if resolveerror raised"

from google.appengine.api import datastore_errors  all_foo = foo.all() bar in all_foo:     try:         user_refproperty = bar.user     except datastore_errors.error, e:         if e.args[0][0:40] == "referenceproperty failed resolved:":             bar.delete()             self.response.out.write('deleted due bad reference property')         else: raise 

Comments

Popular posts from this blog

django - How can I change user group without delete record -

java - Need to add SOAP security token -

java - EclipseLink JPA Object is not a known entity type -