はじめに

FlutterとFirebaseの相性がいいのでFlutter製アプリにFirebaseを導入する人は多いと思います。Firestoreというデータストアを使いたいという人も多いでしょう。僕もその1人です。

この記事ではFlutterでFirestoreにデータを格納する方法をまとめていきます。

環境

  • MacOS BigSur 11.4
  • Flutter 2.5.2
  • Dart 2.14.3
  • firebase_core 1.7.0

前提

  • Flutterプロジェクトがある
  • Firebaseプロジェクトがある
  • FlutterプロジェクトとFirebaseの疎通ができている
  • Firestoreルールについてはこの記事では書かない

することリスト

  • ライブラリインストール
  • Firestoreを有効にする
  • データ格納処理を作成する

ライブラリインストール

以下のコマンドでライブラリをインストールします。

$ flutter pub add cloud_firestore

pubspec.ymlcloud_firestoreが追加されていればOKです。

Firestoreを有効にする

FirebaseのプロジェクトでFirestoreを有効にします。

  1. プロジェクトの左ペインでFirestore Databaseをクリック

2. 画面真ん中にあるデータベースの作成ボタンをクリックします

3. モードを選択

テストモードで問題ありません。

4. データストアのロケーションを選択します

ここはどこでもいいです。ユーザに近い場所が理想なのでとりあえず東京を選択しましょう。

東京はasia-northeast1です。

※1回決めてしまうと変更できないので注意が必要です。

右下の有効にするボタンを押下すると準備完了です。

データ格納処理を作成する

Future add() async { CollectionReference table = FirebaseFirestore.instance.collection("sample_table"); await table .add({ 'a': "aaa", 'b': 1, 'c': 2, 'd': "ddd" }) .then((value) => print("success!!!")) .catchError((error) => print("Error: $error")); }
Code language: JavaScript (javascript)

これを実行するとsample_tableというテーブルにデータが格納されます。

格納できるのは数値文字列だけなので注意してください。

配列やオブジェクトを格納したい場合はjson化して格納できるので試してみてください。

Firebaseの画面を開いた状態でデータを格納するとリアルタイムにデータが増えていくのがわかるので面白いですよ。

以上、最後までお読みいただきましてありがとうございました。

By admin