[flutter] 플러터 애플리케이션에서 클라우드 파이어스토어 데이터 수정하기

클라우드 파이어스토어는 구글의 NoSQL 데이터베이스 솔루션으로, 플러터 애플리케이션에서 데이터를 저장하고 관리하는 데 사용됩니다. 이 포스트에서는 플러터 애플리케이션 내에서 클라우드 파이어스토어에 있는 데이터를 수정하는 방법에 대해 알아보겠습니다.

1. Firestore 인스턴스 초기화

먼저, 플러터 애플리케이션에서 클라우드 파이어스토어를 사용하려면 Firestore 인스턴스를 초기화해야 합니다. 이를 위해 cloud_firestore 패키지를 pubspec.yaml 파일에 추가하고, 앱에서 Firestore를 사용하기 위한 인스턴스를 초기화합니다.

import 'package:cloud_firestore/cloud_firestore.dart';

final FirebaseFirestore _firestore = FirebaseFirestore.instance;

2. 데이터 수정하기

2.1. 단일 도큐먼트 업데이트

클라우드 파이어스토어에서 단일 도큐먼트를 수정하려면 해당 도큐먼트에 대한 참조를 이용하여 업데이트를 수행합니다.

Future<void> updateUserData(String userId, Map<String, dynamic> newData) {
  return _firestore.collection('users').doc(userId).update(newData);
}

2.2. 데이터 일괄 업데이트

여러 도큐먼트를 한 번에 수정해야 할 경우 WriteBatch를 사용하여 데이터 일괄 처리를 수행할 수 있습니다. 예를 들어, 사용자의 프로필 사진을 한꺼번에 업데이트하는 경우에 유용합니다.

Future<void> updateProfilePictures(Map<String, String> pictureUrls) {
  WriteBatch batch = _firestore.batch();

  pictureUrls.forEach((userId, url) {
    DocumentReference userDocRef = _firestore.collection('users').doc(userId);
    batch.update(userDocRef, {'profilePicture': url});
  });

  return batch.commit();
}

결론

이러한 방법을 사용하여 플러터 애플리케이션에서 클라우드 파이어스토어에 있는 데이터를 수정할 수 있습니다. 데이터를 수정함으로써 애플리케이션의 상태를 업데이트하고 사용자 경험을 향상시킬 수 있습니다.