Python 如何查询ReferenceProperty?
假设:Python 如何查询ReferenceProperty?,python,google-app-engine,google-cloud-datastore,Python,Google App Engine,Google Cloud Datastore,假设: 如何查询拥有用户所有者A和兽医B的宠物?我假设Pet类中的引用是键。如果你知道一个好的例子,请发表一篇参考文章-我在文档中找不到一个好的例子。经过一些尝试和错误,我发现解决方案是直截了当的: class Pet (db.model): owner = db.ReferenceProperty(User) vet = db.ReferenceProperty(Vet) name = db.StringProperty() 看一看课堂: 它们是钥匙 您可以从模型实例获取它们,也
如何查询拥有用户所有者A和兽医B的宠物?我假设Pet类中的引用是键。如果你知道一个好的例子,请发表一篇参考文章-我在文档中找不到一个好的例子。经过一些尝试和错误,我发现解决方案是直截了当的:
class Pet (db.model):
owner = db.ReferenceProperty(User)
vet = db.ReferenceProperty(Vet)
name = db.StringProperty()
看一看课堂:
它们是钥匙
您可以从模型实例获取它们,也可以从头开始生成它们
对键进行筛选:
使用from_路径创建关键点:
q = Pet.all()
q.filter("owner", owner)
q.filter("vet", vet)
q.get()
db.GqlQuery("SELECT * FROM Pet WHERE owner = :1 AND vet = :2", user.key(), vet.key())
db.GqlQuery("SELECT * FROM Pet WHERE owner = :1 and vet = :2", owner.key(), vet.key())
Pet.all().filter("owner =", owner.key()).filter("vet =", vet.key())
Key.from_path(kind, id_or_name, parent=none, namespace=None, **kwds)
Key.from_path('Pet', 'Dr Vet')
Key.from_path('Pet', 123)