将Firebase文档字段显示到iOS TableView

时间:2019-02-24 01:40:07

标签: swift google-cloud-firestore tableview

如何将数据从Firestore集合显示到Swift上的tableView?

此代码运行(请参阅下文),但我想直接从Firestore数据库导入,而不是对数据进行分型处理:

videos

下面的代码可以打印到控制台,但不确定如何显示

var habits = [Habit(id: "1", author: "Maiuran", text: "heyhey")]

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {

    let cell = tableView.dequeueReusableCell(withIdentifier: "habitCell", for: indexPath) as! HabitTableViewCell
    cell.set(habit: habits[indexPath.row])
    return cell
}

这是数据库:Firestore Database structure

非常感谢您的时间和建议!

2 个答案:

答案 0 :(得分:1)

您必须检查用户:如果user == nil,则必须先登录用户。

override func viewDidLoad() {
    super.viewDidLoad()
    let user = Auth.auth().currentUser
    if user == nil {
        login()
    } else {
        // processing
    }
}

答案 1 :(得分:0)

这里是部分解决方案(现在它发布到给定的UITextfield中,因此只需要弄清楚如何发布到tableView中即可):

    Firestore.firestore().collection("habits").getDocuments(completion: { (snapshot, error) in

        snapshot!.documents.forEach({ (document) in
            let nametyname = document.data()["author"]
            let street = document.data()["friend"]

            self.myTextiFieldi.text = nametyname as! String
            print(nametyname)
            print(street)
        })
    })