0
我有一个问题,获取具有多个[String:Int]值的列的对象。在我的情况下,我正在存储用户可以喜欢或不喜欢的消息。该消息对象具有列likes
,其包含存储userID
等值(+ 1/-1)的Dict[String, Int]
。 在后端,它看起来像:解析&Swift:具有多个键的列
"likes": {
"123": 1,
"456": -1,
"789": 1
},
我能得到的结果,直到使用一个星期前:
query.whereKey("likes." + userID, equalTo: 1)
但不幸的是,我发现了错误信息:
[错误]:无效键名:likes.123(代码:105,版本:1.12.0)
即使它在几天前工作。
好的,也许我还不够清楚。我试图获取用户以前喜欢的所有消息。因此,我想选择“likes”列中包含userID的所有消息。
该类被称为“消息”具有属性“喜欢”,该属性再次包含字典[用户ID,值]。完整的查询看起来是这样的:
let query = Message.query()!
query.whereKey("likes." + user, equalTo: 1)
,并在后端的对象看起来是这样的:
{"_id": "123456789",
"message": "Test",
"likes": { "123": 1, "456": -1, "789": 1 }
}
我希望你能帮助:)
感谢您的答复,但如果** **点是删除,然后我仍然得到同样的错误信息:“[错误]:无效的密钥名称:likes123(代码:105,版本:1.12.0)“ – vid
oops查看上面更新的代码。 –
这里'likes'是一个对象,如果您要访问的'123'在喜欢的对象,你需要使用这样的'让值值= likes.123' –