ReferencePropertyをキーにする場合のコードの書き方メモ。
class Other(db.Model):
myid = db.StringProperty()
title = db.StringProperty()
created_at = db.DateTimeProperty(auto_now_add=True)
class MarkInfo(db.Model):
otherref= db.ReferenceProperty(Other)
myid= db.StringProperty()
created_at = db.DateTimeProperty(auto_now_add=True)
key = 'xxx...'
mark = MarkInfo.gql("WHERE otherref = :1 AND myid = :2",
db.get(key), "123").fetch(1)
クラスMarkInfoのotherrefが、クラスOtherへのReferenceProperty。
gql内で条件式内でotherrefに指定する値は、db.get(key)で取得する。keyはOtherのキー。
うーむわかりにくい。自分で書いててわかりにくい。
ちなみに、db.get(key)は、eclipseの「式」で見ると、<myclass.Other object at 0x02D12190>となっていた。GQLってそんなもんまで条件文で使えるのか。
まだまだわからないことだらけだが、使いながらおいおい理解していこう。