In questa guida rapida imparerai a creare Firebase Data Connect in la tua applicazione.
- Aggiungi Firebase Data Connect al tuo progetto Firebase.
- Configura un ambiente di sviluppo che includa Visual Studio Estensione di codice che funziona con un'istanza di produzione.
- Poi ti mostreremo come:
- Crea uno schema per un'app di recensioni di film e implementala in produzione.
- Definisci query e mutazioni per il tuo schema.
- Genera SDK fortemente tipizzati e utilizzali nella tua app
- Esegui il deployment dello schema, delle query e dei dati finali in produzione.
Prerequisiti
Per utilizzare questa guida rapida nel tuo ambiente locale, è necessario quanto segue.
- Linux, macOS o Windows
- Visual Studio Code
Eseguire la connessione al progetto Firebase
- Se non l'hai ancora fatto, crea un progetto Firebase.
- Nella console Firebase, fai clic su Aggiungi progetto, quindi segui le istruzioni sullo schermo.
- Vai alla sezione Data Connect della console Firebase e segui il flusso di lavoro di configurazione del prodotto.
Esegui l'upgrade del progetto al piano Blaze. In questo modo puoi creare un cluster Cloud SQL per PostgreSQL.
Seleziona una località per il database Cloud SQL per PostgreSQL.
Prendi nota dei nomi e degli ID di progetto, servizio e database per la conferma in un secondo momento.
Segui la procedura di configurazione rimanente e poi fai clic su Fine.
Scegliere e configurare un ambiente di sviluppo
Data Connect supporta due esperienze di sviluppo:
- Se sei uno sviluppatore Kotlin Android, iOS, Flutter o web, puoi utilizzare lo sviluppo di VS Code per progettare e testare schemi e operazioni in locale durante la connessione all'istanza Cloud SQL per PostgreSQL.
- Se sei uno sviluppatore web, puoi utilizzare IDX Development per creare un prototipo in un'area di lavoro IDX utilizzando un modello IDX preconfigurato con PostgreSQL, l'estensione VS Code con l'emulatore Data Connect e il codice client per la procedura guidata iniziale impostato per te. Troverai ulteriori informazioni nel Sito IDX del progetto.
Questa guida rapida è incentrata sul flusso di sviluppo dell'estensione VS Code. Per continuare:
- Crea una nuova directory per il progetto locale.
- Apri VS Code nella nuova directory.
Installa l'estensione Firebase Data Connect dal Visual Studio Marketplace.
Configura il progetto locale
Installa l'interfaccia a riga di comando seguendo le istruzioni normali. Se hai npm già installata, esegui questo comando:
npm install -g firebase-tools
Configura la directory del progetto
Per configurare il progetto locale, inizializza la directory del progetto.
Nel riquadro di sinistra di VS Code, fai clic sull'icona di Firebase per aprire l'interfaccia utente dell'estensione Firebase VS Code.
- Fai clic sul pulsante Accedi con Google.
- Fai clic sul pulsante Collega un progetto Firebase e seleziona il progetto che hai creato in precedenza nella console.
- Fai clic sul pulsante Esegui firebase init.
- Se il progetto è in base al piano Blaze, quando richiesto "Vuoi configurare le risorse di backend adesso?", rispondi "Yes".
Fai clic sul pulsante Avvia emulatori.
Crea uno schema
Nella directory del progetto Firebase, nel file /dataconnect/schema/schema.gql
, inizia a definire uno schema GraphQL che includa i film.
Film
In Data Connect, i campi GraphQL vengono mappati alle colonne. Il tipo Movie
contiene id
, title
, imageUrl
e genre
. Data Connect
riconosce i tipi di dati primitivi String
e UUID
.
Copia il seguente snippet o rimuovi il commento dalle righe corrispondenti nel 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
Ora che hai i film, puoi modellare i metadati dei film.
Copia il seguente snippet o rimuovi il commento dalle righe corrispondenti nel 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
}
Tieni presente che il campo movie
è mappato a un tipo di Movie
.
Data Connect è consapevole che si tratta di un rapporto tra Movie
e MovieMetadata
e gestirà questo rapporto per te.
Scopri di più sugli schemi Data Connect nella documentazione
Esegui il deployment dello schema in produzione
Se utilizzi l'estensione Firebase VS Code per lavorare con i tuoi devi eseguire il deployment dello schema prima di continuare. Dopo il giorno eseguendo il deployment dello schema nel database di produzione, dovresti essere in grado di visualizzare lo schema sulla console.
- Per il deployment, puoi utilizzare l'estensione Data Connect VS Code.
- Nell'interfaccia utente dell'estensione, fai clic su Esegui il deployment in produzione nel riquadro Firebase Data Connect.
- Potresti dover esaminare le modifiche allo schema e approvare le modifiche potenzialmente distruttive
modifiche. Ti verrà chiesto di:
- Esamina le modifiche allo schema utilizzando
firebase dataconnect:sql:diff
- Quando le modifiche ti soddisfano, applicale utilizzando il flusso avviato
firebase dataconnect:sql:migrate
.
- Esamina le modifiche allo schema utilizzando
Aggiungere dati alle tabelle
Nel pannello dell'editor di VS Code, puoi vedere i pulsanti CodeLens apparire sopra
Tipi di GraphQL in /dataconnect/schema/schema.gql
. Poiché hai eseguito il deployment
del tuo schema in produzione, puoi utilizzare i pulsanti Aggiungi dati e
Esegui (produzione) per aggiungere dati al database sul backend.
Per aggiungere record alla tabella Movie
:
- In
schema.gql
, fai clic sul pulsante Aggiungi dati sopra il tipoMovie
dichiarazione.
- Nel file
Movie_insert.gql
generato, inserisci i dati hardcoded per quattro campi. - Fai clic sul pulsante Esegui (produzione).
Per verificare rapidamente che i dati sono stati aggiunti:
- Torna a
schema.gql
e fai clic sul pulsante Leggi dati. - Nel file
Movie_read.gql
risultante, fai clic sul pulsante Esegui (produzione) per eseguire la query.
Scopri di più sulle mutazioni di Data Connect nella documentazione
Definisci la query
Ora passiamo alla parte divertente, le query. In qualità di sviluppatore, sei abituato a scrivere codice SQL anziché GraphQL, quindi all'inizio può sembrare un po' diverso. Tuttavia, GraphQL è molto più conciso e sicuro dal punto di vista del tipo rispetto a SQL non elaborato. La nostra estensione VS Code semplifica l'esperienza di sviluppo.
Inizia a modificare il file /dataconnect/connector/queries.gql
. Se vuoi trovare tutti i film, utilizza una query come questa.
# 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
}
}
Esegui la query utilizzando il pulsante CodeLens nelle vicinanze.
Scopri di più sulle query Data Connect nella documentazione
Genera SDK e utilizzali nella tua app
- Fai clic sul pulsante Aggiungi SDK all'app.
Nella finestra di dialogo visualizzata, seleziona una directory contenente codice per la tua app. Data Connect. verrà generato il codice SDK salvato in quest'ultima.
Seleziona la piattaforma dell'app, poi tieni presente che il codice SDK viene immediatamente generati nella directory selezionata.
Scopri come utilizzare l'SDK generato per chiamare query e mutazioni dal client di app (web, Android, iOS, Flutter).
Esegui il deployment dello schema e della query in produzione
Hai elaborato un'iterazione di sviluppo. Ora puoi eseguire il deployment di schema, dati e query sul server con l'interfaccia utente dell'estensione Firebase o con l'interfaccia a riga di comando Firebase, proprio come hai fatto con lo schema.
Se utilizzi l'estensione VS Code di Firebase per il deployment, fai clic sul pulsante Esegui il deployment in produzione.
Una volta eseguito il deployment, vai alla console Firebase per verificare che schema, operazioni e dati siano stati caricati nel cloud. Dovresti essere in grado di visualizzare lo schema ed eseguire le operazioni anche nella console. L'istanza Cloud SQL per PostgreSQL verrà aggiornata con la sua versione di cui è stato eseguito il deployment dello schema e dei dati generati.
Scopri di più sull'utilizzo dell'emulatore Data Connect nella documentazione
Passaggi successivi
Esamina il progetto di cui è stato eseguito il deployment e scopri altri strumenti:
Aggiungi dati al tuo database, ispeziona e modifica gli schemi e monitora il servizio Data Connect nella console Firebase. Accedi a ulteriori informazioni nella documentazione. Ad esempio, dato che hai completato la guida rapida:
Scopri di più sullo sviluppo di schemi, query e mutazioni
Scopri come generare SDK client e chiamare query e mutazioni da codice client per web, Android iOS e Flutter.