Google App Engine データストアのちょっとしたTips
2008/10/29 12:58:02
今回はGAEのデータストアのちょっとしたTipsを紹介します。備忘録もかねて…(Googleドキュメントに書かれている基本的なことは読んでいるものとします)
以下詳細。
[Tips]その1
「greetings」にはヒットしたレコードが配列で入っているのでこう書くこともできるみたい。
[Tips]その2
真ん中の書き方においては「[0]」の数字はn行目のレコード取得を表す。
greetings = db.GqlQuery("SELECT * FROM Greeting ORDER BY date DESC LIMIT 10")
for greeting in greetings:
self.response.out.write('<blockquote>%s</blockquote>' % cgi.escape(greeting.content))クエリを発行して「for」文で出力。「greetings」にはヒットしたレコードが配列で入っているのでこう書くこともできるみたい。
greetings = db.GqlQuery("SELECT * FROM Greeting ORDER BY date DESC LIMIT 10")
cnt = greetings.count()
i = 0
while i < cnt:
self.response.out.write('<blockquote>%s</blockquote>' % cgi.escape(greetings[i].content))
i += 1ただしこうやると処理は遅くなる。[Tips]その2
greetings = db.GqlQuery("SELECT * FROM Greeting ORDER BY date DESC LIMIT 10")
print greetings[0].contentとgreeting = db.GqlQuery("SELECT * FROM Greeting ORDER BY date DESC LIMIT 10")[0]
print greeting.contentとgreeting = db.GqlQuery("SELECT * FROM Greeting ORDER BY date DESC LIMIT 10").get()
print greeting.contentは同じ出力になる真ん中の書き方においては「[0]」の数字はn行目のレコード取得を表す。