알고보니 파이어베이스엔 두가지 방식의 저장소가 존재했다.
: Firebase의 기존 데이터베이스로, 여러 클라이언트에서 실시간으로 상태를 동기화해야 하는 모바일 앱을 위한 효율적이고 지연 시간이 짧은 솔루션입니다.
: 모바일 앱 개발을 위한 Firebase의 최신 데이터베이스로서 실시간 데이터베이스의 성공을 바탕으로 더욱 직관적인 새로운 데이터 모델을 선보입니다. 또한 실시간 데이터베이스보다 풍부하고 빠른 쿼리와 원활한 확장성을 제공합니다.
필드에는 다음과 같은 형식이 가능하다.
데이터를 쓰고 읽어오는 간단한 예제는 Firebase 공식문서에 잘 나와있다 😁
// Add a new document with a generated ID
var ref: DocumentReference? = nil
ref = db.collection("콜렉션이름").addDocument(data:
"first": "Ada",
"last": "Lovelace",
"born": 1810
]) { err in
if let err = err {
print("Error adding document: \(err)")
} else {
print("Document added with ID: \(ref!.documentID)")
}
}
// Add a new document in collection "users"
db.collection("users").document("LA").setData([
"name": "Los Angeles",
"state": "CA",
"country": "USA"
]) { err in
if let err = err {
print("Error writing document: \(err)")
} else {
print("Document successfully written!")
}
}
2.1 dictionary 형식으로 필드를 한꺼번에 추가
let docData: [String: Any] = [
"name": "콤마",
"position": 3.14159265,
"date": Timestamp(date: Date()),
"visit": true,
"tag": ["첫방문", "초코빵 맛집", "자몽주스노맛"]
]
db.collection("users").document("test").setData(docData) { err in
if let err = err {
print("Error writing document: \(err)")
} else {
print("Document successfully written!")
}
}
안드로이드할 때 사용했어서인지 아직 익숙하다..!
데이터 읽어와서 테이블뷰에 띄우기