【问题标题】:Google App Engine - Querying for arrays containing a valueGoogle App Engine - 查询包含值的数组
【发布时间】:2013-09-10 13:32:02
【问题描述】:

我有一个 GAE 数据存储表,其中包含一个数组字段(包含一些字符串)。 我想根据包含特定字符串的所有数组字段过滤此表。 我怎样才能做到这一点 ? 我没有在 GQL 中看到“包含”运算符,而“in”运算符则相反。 我是否只需要遍历所有实体并自己进行检查?

(P.S. 我在 GAE 的工作中使用 Python)。

【问题讨论】:

    标签: google-app-engine google-cloud-datastore gql gqlquery


    【解决方案1】:

    只需使用等于,例如:

    class MyModel(db.Model):
      colors = db.StringListProperty()
    
    MyModel(colors=['red', 'blue']).put()
    MyModel(colors=['green', 'blue']).put()
    MyModel(colors=['red', 'green']).put()
    
    color = 'red'
    query = MyModel.gql('WHERE colors = :1', color)
    models = query.fetch(10)
    
    assert len(models) == 2
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-05-17
      • 2015-06-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-01-07
      相关资源
      最近更新 更多