I canβt train how you can get objects from the Google App Engine data store using get_by_id. Here is a model
from google.appengine.ext import db class Address(db.Model): description = db.StringProperty(multiline=True) latitude = db.FloatProperty() longitdue = db.FloatProperty() date = db.DateTimeProperty(auto_now_add=True)
I can create them, put them and get using gql.
address = Address() address.description = self.request.get('name') address.latitude = float(self.request.get('latitude')) address.longitude = float(self.request.get('longitude')) address.put()
The saved address is important for
>> address.key() aglndWVzdGJvb2tyDQsSB0FkZHJlc3MYDQw >> address.key().id() 14
I can find them using the key
from google.appengine.ext import db address = db.get('aglndWVzdGJvb2tyDQsSB0FkZHJlc3MYDQw')
But they cannot find them by id
>> from google.appengine.ext import db >> address = db.Model.get_by_id(14)
The address is missing when I try
>> Address.get_by_id(14) AttributeError: type object 'Address' has no attribute 'get_by_id'
How can I find by id?
EDIT: Turns out I'm an idiot and trying to find the address model in the Address function. Thanks for your answers, I identified Brandon as the correct answer when he came in first and demonstrated that everything should work.
google-app-engine google-cloud-datastore
tarn
source share