【在 iOS 开发路上的大小事-Day27】透过 Firebase 来管理资料 (Cloud Firestore 篇) Part1

前置作业

在 Podfile 里面新增 Firebase Realtime Database 套件

pod 'Firebase/Firestore'

pod install


接着打开 Firebase Console,在侧栏找到「Firestore Database」,点击建立资料库

安全性规则先选「测试模式」来启动

地区用预设的就可以了

再打开 专案名称.xcworkspace,先切到 AppDelegate.swift 确认是否已经有引入相关模组

import UIKit
import Firebase // 记得要引入这个

@main
class AppDelegate: UIResponder, UIApplicationDelegate {
    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
        FirebaseApp.configure() // 还有要加入这行
        return true
    }
    ...
}

都确认有加入後,切到要用 Firestore Database 的那个画面的 Controller.swift 档案
引入 Firestore Database 的模组

import FirebaseFirestore

这边是打算透过类似留言板的东西来实作,资料的部分就都存在 Firestore Database 里面

UI 画面

UI 画面大致如下,会需要一个输入留言人的栏位、一个留言内容的 TextView、一个送出的 Button、一个排序留言的 Button、跟显示留言的 TableView

各元件的 IBOutlet、IBAction (触发条件皆为 Touch Up Inside) 如下

@IBOutlet weak var messagePeopleTF: UITextField!
@IBOutlet weak var messageContentTV: UITextView!
@IBOutlet weak var sendBtn: UIButton!
@IBOutlet weak var messageTableView: UITableView!

@IBAction func sendMessageToRealtimeDatabase(_ sender: UIButton) {
    // 输入送出留言的 Function
}

@IBAction func sortMessage(_ sender: UIButton) {
    // 输入排序留言的 Function
}

TableView Cell 的画面大致如下,会需要一个显示留言人的 Label、一个显示留言内容的 Label

@IBOutlet weak var messagePeople: UILabel!
@IBOutlet weak var messageContent: UILabel!

今天就先到这边,明天再来将新增、读取、更新、删除、排序这几个常见功能实作~


<<:  Unity与Photon的新手相遇旅途 | Day24-Photon房间载入设定

>>:  【Day24】维持权限 — 隐藏後门(一)

【Day10】Git 版本控制 - 将档案 push 到 GitHub 的懒人包

今天来总结一下该如何将档案从本地数据库 push 到 GitHub 上,写个简单的懒人包,也算再复习...

DAY11支持向量机演算法

昨天介绍完支持向量机(Support Vector Machines)和SMO算法,今天就要来实战这...

DAY 29 Big Data 5Vs – Value(价值) - AWS SageMaker & ML Family

资料要产生出价值就不得不提AI与机器学习,各种AI的应用已成为各大平台服务的必争之地,透过演算法从不...

第 1 集:转生到 Bootstrap 5 世界

30天转生到 bootstrap 5 的意识界 类型 前端切版 / Sass / Bootstrap...

[Day 17 - npm] 哆啦A梦有百宝袋,我有套件管理工具npm

前端的社群发展愈来愈蓬勃,延伸出各式各样基於 HTML、CSS、JS 的开源套件,像是 Bootst...