Firebase Data Connect'i yerel olarak kullanmaya başlayın

Bu hızlı başlangıç kılavuzunda, üretim SQL örneği oluşturmadan uygulamanızda Firebase Data Connect'ü yerel olarak nasıl oluşturacağınızı öğreneceksiniz.

  • Firebase Data Connect dosyasını Firebase projenize ekleyin.
  • Visual Studio dahil bir geliştirme ortamı kurma Yerel örnekle çalışacak kod uzantısı.
  • Ardından aşağıdakileri nasıl yapacağınızı göstereceğiz:
    • Film uygulaması için şema oluşturma
    • Uygulamanızda kullanılacak sorguları ve mutasyonları tanımlayın
    • Sorgularınızı ve mutasyonlarınızı yerel bir emülatörde örnek veri kullanarak test edin
    • Etkisi yüksek SDK'lar oluşturup bunları uygulamanızda kullanın
    • Son şemanızı, sorgularınızı ve verilerinizi buluta yayayın (İsteğe bağlı, Blaze planı gerekir).

Ön koşullar

Bu hızlı başlangıç kılavuzunu kullanmak için aşağıdakilere ihtiyacınız vardır.

Geliştirme ortamını ayarlama

Şemayı yönetmek ve uygulamanızda kullanılacak sorguları tanımlamak için Visual Studio Code'a ihtiyacınız vardır. Ayrıca, güçlü şekilde yazılmış bir SDK sizin için otomatik olarak oluşturulur:

  1. Yerel projeniz için yeni bir dizin oluşturun.
  2. Yeni dizinde VS Code'u açın.
  3. Firebase Data Connect uzantısını Visual Studio Code Marketplace.

Proje dizininizi oluşturma

Yerel projenizi ayarlamak için proje dizininizi başlatın. VS Code'un sol panelinde Firebase simgesini tıklayarak Data Connect VS Code uzantısı kullanıcı arayüzünü açın:

  1. Google ile oturum aç düğmesini tıklayın.
  2. Firebase projesi bağlayın düğmesini tıklayın ve oluşturduğunuz projeyi seçin oluşturabilirsiniz.
  3. Run firebase init (firebase init çalıştır) düğmesini tıklayın.
  4. Emülatörleri başlat düğmesini tıklayın.

Şema oluşturma

Firebase proje dizininizdeki /dataconnect/schema/schema.gql dosyasında, filmlerle ilgili bir GraphQL şeması tanımlamaya başlayın.

Film

Data Connect'te GraphQL alanları sütunlarla eşlenir. Filmde id var, title, imageUrl ve genre. Data Connect, String ve UUID temel veri türlerini tanır.

Aşağıdaki snippet'i kopyalayın veya dosyada ilgili satırların yorumunu kaldırın.

# By default, a UUID id key will be created by default as primary key.
# If you want to specify a primary key, say title, which you can do through
# the @table(key: "title") directive
type Movie @table {
  id: UUID! @default(expr: "uuidV4()")
  title: String!
  imageUrl: String!
  genre: String
}

FilmMeta Verileri

Aşağıdaki snippet'i kopyalayın veya dosyadaki ilgili satırların açıklamasını kaldırın.

# 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
}

movie alanının Movie türüyle eşleştirildiğini unutmayın. Data Connect, bunun Movie arasında bir ilişki olduğunu anlıyor ve MovieMetadata, bu ilişkiyi sizin adınıza yönetecek.

Veri Bağlantısı şemaları hakkında daha fazla bilgiyi dokümanda bulabilirsiniz.

Tablolarınıza veri ekleme

VS Code editor panelinde CodeLens düğmelerini göreceksiniz. /dataconnect/schema/schema.gql aralığındaki grafikQL türleri. Google Haberler'deki Veri ekle ve Çalıştır (Yerel) düğmeleri, yerel veritabanınıza veri ekler.

Movie ve MovieMetadata tablolarına kayıt eklemek için:

  1. schema.gql dosyasında, Movie tür beyanının üstündeki Veri ekle düğmesini tıklayın.
    Firebase Data Connect için Code Lens Veri ekle düğmesi
  2. Oluşturulan Movie_insert.gql dosyasında, üç alan için verileri sabit kodlayın.
  3. Run (Local) (Çalıştır (Yerel)) düğmesini tıklayın.
    Firebase Data Connect için Code Lens Çalıştır düğmesi
  4. Oluşturulan MovieMetadata_insert mutasyonunda istendiği gibi, MovieMetadata tablosuna bir kayıt eklemek için önceki adımları tekrarlayın ve movie alanına Filminizin uid değerini girin.

Verilerin eklendiğini hızlı bir şekilde doğrulamak için:

  1. schema.gql ürününde Verileri oku düğmesini tıklayın.
  2. Oluşturulan Movie_read.gql dosyasında, aşağıdaki işlemleri yapmak için Run (Local) (Çalıştır (Yerel)) düğmesini tıklayın. sorguyu yürütür.

Veri Bağlantısı mutasyonları hakkında daha fazla bilgiyi dokümanda bulabilirsiniz.

Sorgunuzu tanımlayın

Şimdi sıra işin eğlenceli kısmına geliyor: Uygulamanızda ihtiyaç duyacağınız sorguları tanımlayalım. Geliştirici olarak, GraphQL yerine SQL sorguları yazmaya alışkınsınız bu nedenle ilk başta biraz farklı olabilir. Ancak GraphQL, ham SQL'den çok daha kısa ve tür açısından güvenlidir. VS Code uzantımız da geliştirme deneyimini kolaylaştırır.

/dataconnect/connector/queries.gql dosyasını düzenlemeye başlayın. Tüm filmleri almak istiyorsanız aşağıdaki gibi bir sorgu kullanın.

# 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
  }
}

Yakındaki CodeLens düğmesini kullanarak sorguyu yürütün.

Buradaki gerçekten heyecan verici bir özellik, veritabanının ilişkilerini grafik gibi ele alma olanağıdır. MovieMetadata, bir filme referans veren bir movie alanına sahip olduğundan, alanı iç içe yerleştirebilir ve film bilgileri hakkında bilgi alabilirsiniz. Oluşturulan movieMetadata_on_movie türünü ListMovies sorgusu.

query ListMovies @auth(level: PUBLIC) {
  movies {
    id
    title
    imageUrl
    genre
    movieMetadata_on_movie {
        rating
    }
  }
}

Dokümanlarda Data Connect sorguları hakkında daha fazla bilgi edinebilirsiniz.

SDK'lar oluşturun ve bunları uygulamanızda kullanın

VS Code'un sol panelinde Firebase simgesini tıklayarak Data Connect VS Code uzantısı kullanıcı arayüzünü açın:

  1. SDK'yı uygulamaya ekle düğmesini tıklayın.
  2. Görüntülenen iletişim kutusunda, kodu içeren bir dizin seçin en iyi yoludur. Data Connect SDK kodu oluşturulacak ve kaydedilmektedir.

  3. Uygulama platformunuzu seçin, ardından SDK kodunun anında seçilen dizinde oluşturulur.

Oluşturulan SDK'yı istemci uygulamalarından (web, Android, iOS, Flutter) sorgu ve mutasyon çağırmada nasıl kullanacağınızı öğrenin.

Şemanızı ve sorgunuzu üretime dağıtma

Uygulamanızda yerel ayarlarınızı yaptıktan sonra şema, veri ve sorguları buluta taşımanızı sağlar. Proje oluşturmak için Blaze planınızın olması gerekir Cloud SQL örneği.

  1. Firebase konsolunun Data Connect bölümüne gidip Ücretsiz deneme amaçlı Cloud SQL örneği.

  2. VS Code'a entegre edilmiş Terminal'de firebase init dataconnect'i çalıştırın ve konsolda oluşturduğunuz bölge/hizmet kimliğini seçin.

  3. "dataconnect/dataconnect.yaml dosyası zaten var, üzerine yazılsın mı?" sorulduğunda "Y" seçeneğini belirleyin.

  4. Data Connect ile Kod Uzantısı kullanıcı arayüzünde Üretime dağıt'ı tıklayın. düğmesini tıklayın.

  5. Dağıtımdan sonra Firebase konsoluna gidin şemanın, işlemlerin ve verilerin buluta yüklendiğini doğrulamak için kullanılır. Şemayı görüntüleyebilir ve işlemlerinizi konsolda da çalıştırabilirsiniz. PostgreSQL için Cloud SQL örneği, nihai URL'yle güncellenecek oluşturulan şema ve verileri dağıttı.

Sonraki adımlar

Dağıtılan projenizi inceleyin ve daha fazla araç keşfedin:

  • Firebase konsolunda veritabanınıza veri ekleyin, şemalarınızı inceleyip değiştirin ve Data Connect hizmetinizi izleyin.

Dokümanlardan daha fazla bilgiye erişin. Örneğin, hızlı başlangıç kılavuzunu tamamladığınız için: