플러터와 파이어베이스 2탄- 파이어스토어에 자료 저장하기(create)-(1)
플러터와 파이어베이스 2탄 파이어 스토어에 저장하기 편입니다. CRUD 중 Create에 해당하는 내용인데요. 파이어베이스 초기 설정을 하지 않으신 분은 아래 링크로 가셔서 파이어 베이스와 플러터 프로젝트를 연결해 주시기 바랍니다.
https://jh-industry.tistory.com/61
플러터와 파이어베이스 1탄- 플러터 3.0 업데이트 후 파이어베이스(firebase) 설정법(2)
이전 포스팅 플러터와 파이어베이스 1탄 - 플러터 3.0 업데이트 후 파이어베이스(firebase) 설정법(1) Flutter 3.0은 파이어베이스가 정식 지원 플러터 3.0 업데이트 후 저에게 가장 크게 와닿는 변화는 f
jh-industry.tistory.com
제가 전에 만든 파이어 스토어 관련 포스팅입니다. 여기 더 자세한 설명이 있으니 초심자 분들은 여기 보셔도 될거 같습니다.
[Flutter, firebase]파이어 스토어에서 데이터 저장하고 불러오기
순서 파이어베이스에 프로젝트를 생성한다. dart package 설치 cloud_firestore firebase_core 프로젝트와 파이어베이스를 연결한다. flutterfire configure 명령어를 실행(저는 CLI를 이용하였습니다. ) 파이어..
jh-industry.tistory.com
파이어스토어 관련 복습
자세한 내용은 링크를 참조해 주시기 바랍니다. 클릭해주세요
- 콜렉션은 다른 데이터베이스에 테이블이랑 같은 개념이고 다큐먼트는 각각의 데이터(row, record)를 의미합니다.
- DocumentReference는 특정 다큐먼트(데이터)의 위치를 나타내는 자료형 -> pk랑 비슷한 의미로 이해 될듯...
- 실제 데이터는 DocumentSnapshot 형태로 가지고 옵니다.
- CollectionReference - QuerySnapshot 특정 콜렉션 안에 있는 다큐멘트들을 가져올때 사용합니다.
필요한 패키지를 설치
cloud_firestore: ^3.1.17
자료형 만들기(클래스 만들기)
플러터에서 파이어베이스로 자료를 저장하고 불러올때는 클래스로 하나의 자료형을 만들어서 데이터를 처리합니다.
이걸 편하게 해주는 플러그인이 Json to Dart입니다. 이 플러그인을 사용하면 손쉽게 클래스를 만들수 있습니다. 단, 어느정도 실제 자료형에 맞게 수정은 필요합니다.
제가 만든 자료형은 아래와 같습니다. 단순히 문자열과 시간만 저장하려고합니다.
import 'package:cloud_firestore/cloud_firestore.dart';
/// motto : "세계적 클래스의 타이탄들에게는 초능력이 없었다. 대신 그들에게는 뚜렷한 목표(계획)가 있다."
/// date : "2022-03-29 13:02:21"
/// reference : "reference"
class FireModel {
// 사용되는 자료형
String? motto;
Timestamp? date;
DocumentReference? reference;
//생성자
FireModel({
this.motto,
this.date,
this.reference,
});
//json => Object로, firestore에서 불러올때
FireModel.fromJson(dynamic json, this.reference) {
motto = json['motto'];
date = json['date'];
}
// Named Constructor with Initializer
// fromSnapShot Named Constructor로 snapshot 자료가 들어오면 이걸 다시 Initializer를 통해
// fromJson Named Constructor를 실행함
// DocumentSnapshot 자료형을 받아 올때 사용하는 Named Constructor
// 특정한 자료를 받아 올때 사용한다.
FireModel.fromSnapShot(DocumentSnapshot<Map<String, dynamic>> snapshot)
: this.fromJson(snapshot.data(), snapshot.reference);
// Named Constructor with Initializer
// 컬렉션 내에 특정 조건을 만족하는 데이터를 다 가지고 올때 사용한다.
FireModel.fromQuerySnapshot(
QueryDocumentSnapshot<Map<String, dynamic>> snapshot)
: this.fromJson(snapshot.data(), snapshot.reference);
//Object => json, firestore에 저장할때
Map<String, dynamic> toJson() {
final map = <String, dynamic>{};
map['motto'] = motto;
map['date'] = date;
return map;
}
}
여기까지 하셨으면 firebase로 CRUD 구현에 절반은 하신겁니다. 다음은 저장하는 코드를 구현해보겠습니다.
2022.06.16 - 플러터와 파이어베이스 2탄- 파이어스토어에 자료 저장하기(create)-(2)
플러터와 파이어베이스 2탄- 파이어스토어에 자료 저장하기(create)-(2)
이전편에서 편리하게 데이터를 가공하기위한 자료형을 만들었습니다. 이번에는 파이어베이스 공식 문서를 보고 데이터를 파이어스토어에 저장하는 코드를 작성해보도록 하겠습니다. 이 포스
jh-industry.tistory.com
2022.06.17 - 플러터와 파이어베이스 3탄 - 파이어 베이스 데이터 가져오기(READ)-DocumentReference란?? CollectionReference
플러터와 파이어베이스 3탄 - 파이어 베이스 데이터 가져오기(READ)-DocumentReference란?? CollectionReferen
플러터로 파이어 베이스 데이터 가져오기(READ) 1탄과 2탄에 이어 이번에는 파이어베이스(파이어스토어)에 저장된 데이터를 불러오는 방법에 대해 알아보겠습니다. 우선 기본 용어와 흐름 부터
jh-industry.tistory.com
2022.06.19 - 플러터와 파이어베이스 4탄 - 파이어스토어에 데이터 수정하기(UPDATE), 데이터 삭제하기(Delete)
플러터와 파이어베이스 4탄 - 파이어스토어에 데이터 수정하기(UPDATE), 데이터 삭제하기(Delete)
Flutter & FireBase(FireStore) 데이터 수정하기, 삭제하기 편 대망에 파이어스토어 CRUD편의 마지막입니다. 저장하기, 읽어오기, 수정하기, 삭제하기가 데이터베이스를 처음 접했을때 지겹게 듣고 실습
jh-industry.tistory.com
'플러터관련 정보 > 파이어 베이스(플러터)' 카테고리의 다른 글
플러터와 파이어베이스 3탄 - 파이어 베이스 데이터 가져오기(READ)-DocumentReference란?? CollectionReference (0) | 2022.06.17 |
---|---|
플러터와 파이어베이스 2탄- 파이어스토어에 자료 저장하기(create)-(2) (0) | 2022.06.16 |
플러터와 파이어베이스 1탄- 플러터 3.0 업데이트 후 파이어베이스(firebase) 연동(2) (0) | 2022.06.07 |
[flutter,firestore] 파이어 스토어 필터링 후 정렬하기 - 복합색인, 태그검색 기능 구현 (0) | 2022.06.06 |
[Flutter, firebase]파이어 스토어에서 데이터 저장하고 불러오기 (0) | 2022.04.13 |
댓글