get_by_id を使用して Google App Engine データストアからオブジェクトを取得する方法がわかりません。モデルはこちら
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')
しかし、IDでそれらを見つけることができません
>> 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'
どうすればIDで検索できますか?
編集: 私は馬鹿で、Address という関数で Address Model を見つけようとしていたことがわかりました。ご回答ありがとうございます。Brandon が最初に参加し、すべてが機能することを実証したので、Brandon を正解としてマークしました。