読者です 読者をやめる 読者になる 読者になる

親がいるモデルをキー以外で取得するなら親指定必須

appengine python

Google App Engine (以下 GAE) では、parent がいるモデルを get_by_key_name や get_by_id で取得する場合、parent を指定する必要がある。parent に指定するのは、モデルオブジェクトでもいいし、キーでもいい。

これを知らなかったので、モデルを取得できないバグで1時間ほど悩んだ。原因は、key_name と parent を指定して保存したモデルを、key_name だけ指定して取得しようとしていたから。GAE SDKソースコードを読んだら解決した。

やっぱり、つまずいたときは GAE SDKソースコードを読むに限るね。最後の手段だけど。