【发布时间】:2018-11-17 18:52:13
【问题描述】:
原文:我遇到了一些我无法弄清楚的事情: 我有一个客户列表及其数据,我有一个日历日期列表,客户在 Firebase 中标记为可用。我需要弄清楚如何根据日历排除客户。 我搜索了一下,发现这个问题几乎可以回答我的问题:
更新:我现在已将 Firebase 数据库更改为不必分离父母,而是将其包含在客户中
How to filter Firebase data in Swift?
// This is my new code from the link above
ref.child("customers").queryOrdered(byChild: "calendar").
queryEqual(toValue: true).observe(.childAdded, with: { snapshot in
let snapshotDict = snapshot.value as? NSDictionary
let name = snapshotDict?["Name"] as! String
let email = snapshotDict?["Email"] as! String
let rating = snapshotDict?["Rating"] as! String
let key = snapshot.key
self.posts.insert(postStruct(name: name, email: email, rating: rating, key: key), at: 0)
self.tableView.reloadData()
因此,如果我只检查“日历”的值是否 = true,这将有效。但是我在日历中有几个键和值,我不知道下一步。我的数据库如下所示:
customers:
- sk1239sdkq2312lk
- calendar
- 9. june, 2018
- 1 : 10:00
- lk3j4590gsdflkj2
- calendar
- 9. june, 2018
- 1 : 10:00
- x98123jasdhasdss
- calendar
- 9. june, 2018
- 3 : 12:00
我只想在我的表中插入两个第一个客户,他们有 9. June, 2018 和 1 : 10:00。
我有我要查找的日期(2018 年 6 月 9 日)和时间(10:00),但没有数字(1、2、3)。
我该怎么做?
【问题讨论】:
-
请将您的 Firebase 结构 sn-p 包含为文本,请不要包含链接或图片。如果链接断开,它将使您的问题无效。最重要的是,当有人回答时,他们可能需要包含您的结构,我们真的不喜欢重新输入所有这些。如果是文本,我们可以复制粘贴。看看Linked Images Are Evil
-
谢谢!除了提到的类似问题中的代码外,我没有针对此问题的任何代码。我猜有些代码是相似的。有人帮助我将图像从链接更改为嵌入,他们在那里展示了我的数据库是如何组织的。
-
再次提醒,请不要包含链接或图片我们发短信。如您所见,如果我的答案包含您的 Firebase 结构,则必须重新输入。要获取结构的 sn-p,请使用 Firebase 控制台->导出 JSON,打开文本文件并将文本的 sn-p 复制并粘贴到问题中。
-
另外,根据您的结构,您将无法获得所需的内容,因此需要对其进行更改。最后,请不要使用数组——它们真的不适合 NoSQL 数据库。请参阅我对this question 和another answer 的回答
-
感谢大家的回复,我现在已经更新了我的问题和代码,并删除了所有的图片。
标签: swift firebase firebase-realtime-database