Memulai Firebase Data Connect

Dalam panduan memulai ini, Anda akan mempelajari cara mem-build Firebase Data Connect di aplikasi dengan instance SQL produksi. Anda akan:

  • Tambahkan Firebase Data Connect ke project Firebase Anda.
  • Sediakan instance Cloud SQL untuk aplikasi Anda.
  • Siapkan lingkungan pengembangan termasuk ekstensi Visual Studio Code agar berfungsi dengan instance produksi.
  • Kemudian, kami akan menunjukkan cara:
    • Membuat skema untuk aplikasi film
    • Menentukan kueri dan mutasi yang akan digunakan di aplikasi Anda
    • Menguji kueri dan mutasi dengan data sampel
    • Membuat SDK dengan jenis yang kuat dan menggunakannya di aplikasi
    • Deploy skema, kueri, dan data akhir Anda ke cloud.

Membuat project Firebase dan database Cloud SQL

  1. Jika Anda belum melakukannya, buat project Firebase.
    1. Di Firebase console, klik Add project, lalu ikuti petunjuk di layar.
  2. Buka bagian Data Connect di konsol Firebase dan ikuti alur kerja penyiapan produk.
  3. Upgrade project Anda ke paket Blaze. Dengan demikian, Anda dapat membuat instance Cloud SQL untuk PostgreSQL.

  4. Pilih lokasi untuk database CloudSQL untuk PostgreSQL Anda.

  5. Catat nama dan ID project, layanan, dan database untuk konfirmasi nanti.

  6. Ikuti alur penyiapan yang tersisa, lalu klik Selesai.

Memilih alur pengembangan

Data Connect menawarkan dua cara untuk menginstal alat pengembangan.

Prasyarat

Untuk menggunakan quickstart ini, Anda memerlukan hal berikut.

Menyiapkan lingkungan pengembangan

  1. Buat direktori baru untuk project lokal Anda.
  2. Buka VS Code di direktori baru.
  3. Instal ekstensi Firebase Data Connect dari Visual Studio Code Marketplace.

Menyiapkan direktori project

Untuk menyiapkan project lokal, lakukan inisialisasi direktori project. Di jendela IDE, di panel sebelah kiri, klik ikon Firebase untuk membuka UI ekstensi VS Code Data Connect:

  1. Klik tombol Sign in with Google.
  2. Klik tombol Connect a Firebase project dan pilih project yang Anda buat sebelumnya di konsol.
  3. Klik tombol Run firebase init dan selesaikan alur.
  4. Klik tombol Start emulators.

Membuat skema

Di direktori project Firebase, dalam file /dataconnect/schema/schema.gql, mulai tentukan skema GraphQL yang menyertakan film.

Film

Di Data Connect, kolom GraphQL dipetakan ke kolom. Jenis Movie memiliki id, title, imageUrl, dan genre. Data Connect mengenali jenis data primitif String dan UUID.

Salin cuplikan berikut atau hapus komentar pada baris yang sesuai dalam file.

# File `/dataconnect/schema/schema.gql`

# By default, a UUID id key will be created by default as primary key.
type Movie @table {
  id: UUID! @default(expr: "uuidV4()")
  title: String!
  imageUrl: String!
  genre: String
}

MovieMetadata

Setelah memiliki film, Anda dapat membuat model metadata film.

Salin cuplikan berikut atau hapus komentar pada baris yang sesuai dalam file.

# Movie - MovieMetadata is a one-to-one relationship
type MovieMetadata @table {
  # This time, we omit adding a primary key because
  # you can rely on Data Connect to manage it.

  # @unique indicates a 1-1 relationship
  movie: Movie! @unique
  # movieId: UUID <- this is created by the above reference
  rating: Float
  releaseYear: Int
  description: String
}

Perhatikan bahwa kolom movie dipetakan ke jenis Movie. Data Connect memahami bahwa ini adalah hubungan antara Movie dan MovieMetadata dan akan mengelola hubungan ini untuk Anda.

Pelajari skema Data Connect lebih lanjut dalam dokumentasi

Men-deploy skema ke produksi

Anda harus men-deploy skema sebelum melanjutkan.

Di UI ekstensi, pada panel Firebase Data Connect, klik Deploy to production.

Setelah men-deploy skema ke database produksi, Anda akan dapat melihat skema di Firebase console.

Menambahkan data ke tabel

Di panel editor IDE, Anda dapat melihat tombol CodeLens muncul di atas jenis GraphQL di /dataconnect/schema/schema.gql. Setelah men-deploy skema ke produksi, Anda dapat menggunakan tombol Tambahkan data dan Jalankan (Produksi) untuk menambahkan data ke database di backend.

Untuk menambahkan data ke tabel Movie:

  1. Di schema.gql, klik tombol Tambahkan data di atas deklarasi jenis Movie.
    Tombol Tambahkan data Lensa Kode untuk Firebase Data Connect
  2. Dalam file Movie_insert.gql yang dihasilkan, hard code data untuk empat kolom.
  3. Klik tombol Run (Production).
    Tombol Run Code Lens untuk Firebase Data Connect
  4. Ulangi langkah sebelumnya untuk menambahkan data ke tabel MovieMetadata, dengan menyediakan id Film Anda di kolom movieId, seperti yang diminta dalam mutasi MovieMetadata_insert yang dihasilkan.

Untuk memverifikasi dengan cepat bahwa data telah ditambahkan:

  1. Kembali ke schema.gql, klik tombol Baca data di atas deklarasi jenis Movie.
  2. Pada file Movie_read.gql yang dihasilkan, klik tombol Run (Production) untuk menjalankan kueri.

Pelajari mutasi Data Connect lebih lanjut dalam dokumentasi

Menentukan kueri

Sekarang saatnya bagian yang menyenangkan, kueri. Sebagai developer, Anda terbiasa menulis kueri SQL, bukan kueri GraphQL, sehingga hal ini mungkin terasa sedikit berbeda pada awalnya. Namun, GraphQL jauh lebih ringkas dan aman dari jenis daripada SQL mentah. Selain itu, ekstensi VS Code kami memudahkan pengalaman pengembangan.

Mulai edit file /dataconnect/connector/queries.gql. Jika Anda ingin mendapatkan semua film, gunakan kueri seperti ini.

# File `/dataconnect/connector/queries.gql`

# @auth() directives control who can call each operation.
# Anyone should be able to list all movies, so the auth level
# is set to PUBLIC
query ListMovies @auth(level: PUBLIC) {
  movies {
    id
    title
    imageUrl
    genre
  }
}

Jalankan kueri menggunakan tombol CodeLens di dekatnya.

Pelajari kueri Data Connect lebih lanjut dalam dokumentasi

Membuat SDK dan menggunakannya di aplikasi

  1. Klik tombol Tambahkan SDK ke aplikasi.
  2. Pada dialog yang muncul, pilih direktori yang berisi kode untuk aplikasi Anda. Kode SDK Data Connect akan dibuat dan disimpan di sana.

  3. Pilih platform aplikasi Anda, lalu perhatikan bahwa kode SDK langsung dibuat di direktori yang Anda pilih.

Pelajari cara menggunakan SDK yang dihasilkan untuk memanggil kueri dan mutasi dari aplikasi klien (web, Android, iOS, Flutter).

Men-deploy skema dan kueri ke produksi

Anda telah mengerjakan iterasi pengembangan. Sekarang Anda dapat men-deploy skema, data, dan kueri ke server dengan UI ekstensi Firebase atau CLI Firebase, seperti yang Anda lakukan dengan skema.

Di jendela IDE, di UI Ekstensi VS Code, klik tombol Deploy to production.

Setelah di-deploy, buka konsol Firebase untuk memverifikasi bahwa skema, operasi, dan data telah diupload ke cloud. Anda harus dapat melihat skema, dan menjalankan operasi di konsol juga. Instance Cloud SQL untuk PostgreSQL akan diperbarui dengan skema dan data akhir yang dihasilkan dan di-deploy.

Pelajari lebih lanjut cara menggunakan emulator Data Connect dalam dokumentasi

Langkah berikutnya

Tinjau project yang di-deploy dan temukan alat lainnya:

  • Tambahkan data ke database, periksa dan ubah skema, serta pantau layanan Data Connect di Firebase console. Akses informasi selengkapnya dalam dokumentasi. Misalnya, setelah Anda menyelesaikan panduan memulai:

  • Pelajari lebih lanjut pengembangan skema, kueri, dan mutasi

  • Pelajari cara membuat SDK klien dan memanggil kueri serta mutasi dari kode klien untuk web, Android, iOS, dan Flutter.