google app engine - Python TypeError on NDB Model.query() -
i following ndb queries doc of gae in python, can not continue following errors:
# python google_appengine/remote_api_shell.py -s 127.0.0.1:8020 app engine remote_api shell python 2.7.3 (default, mar 13 2014, 11:03:55) [gcc 4.7.2] db, ndb, users, urlfetch, , memcache modules imported. dev~env> class customer(ndb.model): ... name = ndb.stringproperty() ... dev~env> class purchase(ndb.model): ... customer = ndb.keyproperty(kind=customer) ... price = ndb.integerproperty ... dev~env> c = customer() dev~env> c.name = 'lvqier' dev~env> k = c.put() dev~env> k key('customer', 5629499534213120) dev~env> p = purchase() dev~env> p.customer = k dev~env> p.price = 10 dev~env> kp = p.put() dev~env> purchase.query(customer=c.key).fetch() traceback (most recent call last): file "<console>", line 1, in <module> file ".../google_appengine/google/appengine/ext/ndb/model.py", line 3209, in _query qry = query(kind=cls._get_kind(), **kwds) file ".../google_appengine/google/appengine/ext/ndb/utils.py", line 136, in positional_wrapper return wrapped(*args, **kwds) typeerror: __init__() got unexpected keyword argument 'customer' dev~env>
what want purchase objects of specific customer. wrong?
the arguments query , filter methods need expressions. query
purchase.query(purchase.customer==c.key).fetch()
probably worth going on docs, outlined there. https://developers.google.com/appengine/docs/python/ndb/queries#filter_by_prop
Comments
Post a Comment