我如何搜索用户以外的其他内容?

时间:2020-04-23 18:23:00

标签: google-cloud-platform google-cloud-datastore

在种类为“用户”的Google Cloud Platform /数据存储/实体中,显示了前50个用户键(我可以使用键上的过滤器成功搜索该键),并且在每个用户键旁边显示值实体“ gaeUser”的名称,该名称是字符串,例如Joe@gmail.com。单击“过滤器实体”,然后从下拉菜单中选择“ gaeUser”,这将自动设置“等于”,然后在最后一个框中输入“ Joe.gmail.com”,这是值之一在上一个显示中显示gaeUser的结果。我返回“没有实体与该查询匹配”。我当然也尝试了双引号或不使用双引号,但没有成功。我确实需要能够进行这种搜索,并且我可以想不到我为什么不能帮助您?

2 个答案:

答案 0 :(得分:0)

查看显示gaeUser的未过滤结果的屏幕快照会很有用。

可能的问题:

  • 属性gaeUser未建立索引
  • 属性gaeUser的类型不是String,而是其他类型
  • Joe@gmail.com\r\n一样具有空格

编辑:添加了屏幕截图。如果单击数据存储查看器中的特定实体,然后单击属性,它将告诉您它的类型。 enter image description here

编辑2:

嗯,嵌入式实体。我认为您需要搜索字段gaeUser.email,如果下拉UI没有为您提供该字段,请尝试使用QUERY BY GQL代替QUERY BY KIND

SELECT * From `User` where gaeUser.email='gork@gleep.org'

答案 1 :(得分:0)

谢谢!这非常有帮助,因为我从未单击正确的内容来访问您显示的页面。我看到的是gaeUser实际上已被索引,但是无论哪种类型,它的类型都是“嵌入式实体”。我还显示了下面的代码。是否可以在不破坏数据存储的情况下将类型从“嵌入式实体”更改为“字符串”?我应该如何进行? (我知道这不是一个答案,我不应该发布答案,但是我不知道如何在不使用答案输入机制的情况下清晰地显示代码(我看到一个人也可以发布图像)

{
  "properties": {
    "auth_domain": {
      "stringValue": "gmail.com",
      "excludeFromIndexes": true
    },
    "user_id": {
      "stringValue": "1114935",
      "excludeFromIndexes": true
    },
    "email": {
      "stringValue": "gork@gleep.org",
      "excludeFromIndexes": true
    }
  }
}
相关问题