【Swift】Cloud Firestore의 map형으로 지정한 속성만 업데이트
소개
전회의 투고에서도 Firestore의 map형에 대해서 썼습니다만,
이번은 앱에서 Firestore의 map형 데이터의 지정 항목만을 갱신하는 방법에 대해서, 비고록으로서 썼습니다.
■ 마지막 게시물
【Swift】Cloud Firestore로 map형을 취득하는 Tips
운영 환경
Xcode12.4/iOS14.4
Firestore 데이터 구조
Firestore 내에서 정의한 데이터 구조는 다음과 같습니다.
이번 목적
map형의 1개의 단위는,
id
~ price
까지가 됩니다만, 이번은 맨 위의 데이터(1)의 isOrderComplete: Bool
지정해 그것만을 갱신합니다.구현
소스 코드
func updateOrderComplete(flag: Bool, completion: @escaping (_ succsess: Bool, _ _error: Error?) -> Void) {
// まずは、更新対象のコレクションとドキュメントを指定
let orderRef = db.collection("ordering").document("01")
// map型の更新したいプロパティを[key].[property]という形式で指定する(詳細は解説に記載)
orderRef.updateData(["1.isOrderComplete" : flag]) { _error in
if let error = _error {
// 失敗
completion(false, error)
} else {
// 成功
completion(true, nil)
}
}
}
해설
이 주제를 설명하기 전에 Firestore의 map 유형 구조를 이해해야합니다.
KEY
Value
이번에는 '1'에 해당하는 부분
업데이트 대상
isOrderComplete
를 포함하여 id
~ price
가 저장된 부분map형의 구조는 이런 느낌입니다.
이 경우에는
1(KEY)
의 isOrderComplete
를 업데이트하는 것이 목적입니다.map형의 지정된 프로퍼티를 갱신하고 싶은 경우, Key와 프로퍼티의 사이를 닷으로 단락지어 지정하는 것으로 실현할 수 있는 것 같습니다.
이하, 공식 레퍼런스를 붙여 둡니다!
htps : // 푹 빠져라. 오, ぇ. 코 m / 드 cs / 푹신 s 잡아 / 마나게 - 다 / 아 d - 이었어? hl = 그럼 # u p dae_fue lds_in_ne s ne d_o bji cts
Reference
이 문제에 관하여(【Swift】Cloud Firestore의 map형으로 지정한 속성만 업데이트), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/ctnc_67/items/1542b75ac719d9bd68b3텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)