Я не могу понять, как вы можете получить объекты из хранилища данных Google App Engine с помощью get_by_id. Вот модель
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)
Я могу создать их, поместить их и получить с помощью 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()
Сохраненный адрес имеет значения для
>> address.key()
aglndWVzdGJvb2tyDQsSB0FkZHJlc3MYDQw
>> address.key().id()
14
Я могу найти их, используя ключ
from google.appengine.ext import db
address = db.get('aglndWVzdGJvb2tyDQsSB0FkZHJlc3MYDQw')
Но не могу найти их по идентификатору
>> from google.appengine.ext import db
>> address = db.Model.get_by_id(14)
Адрес None, когда я пытаюсь
>> Address.get_by_id(14)
AttributeError: type object 'Address' has no attribute 'get_by_id'
Как мне найти по идентификатору?
РЕДАКТИРОВАТЬ: Оказывается, я идиот и пытался найти модель адреса в функции с именем Address. Спасибо за ваши ответы, я пометил Брэндона как правильный ответ, так как он вошел первым и продемонстрировал, что все должно работать.