Xata & Astro
Xata è una Piattaforma dati serverless che combina le funzionalità di un database relazionale, un motore di ricerca e un motore di analisi, e li rende utilizzabili attraverso una singola REST API.
Aggiunta di un database con Xata
Sezione intitolata Aggiunta di un database con XataPrerequisiti
Sezione intitolata Prerequisiti- Un account Xata con un database. (Puoi utilizzare il database di esempio dall’interfaccia utente.)
- Un Token di Accesso (
XATA_TOKEN_API
). - L’URL del tuo Database.
Dopo aver aggiornato e inizializzato la Xata CLI, avrai il tuo token per l’API nel file .env
e l’URL del database.
Alla fine della configurazione, dovresti avere:
E l’URL del database:
Configurazione dell’ambiente
Sezione intitolata Configurazione dell’ambientePer avere IntelliSense e dei tipi per le tue variabili d’ambiente, modifica o crea il file env.d.ts
nella tua cartella src/
:
Per ulteriori informazioni sulle variabili d’ambiente (EN) e sui file .env
in Astro, leggi questa guida.
Utilizzando la Xata CLI per generare il codice di base e scegliendo l’opzione TypeScript, sarà generata un’istanza del SDK per te, con i tipi adattati allo schema del tuo database. Inoltre, @xata.io/client
sarà aggiunto al tuo package.json
.
Le tue variabili d’ambiente Xata e l’URL del database sono stati automaticamente acquisiti dall’istanza del SDK, quindi non è necessario alcun altro lavoro di configurazione.
Ora, il tuo progetto dovrebbe avere la seguente struttura:
Cartellasrc/
- xata.codegen.ts
- env.d.ts
- .env
- astro.config.mjs
- package.json
- .xatarc
Creazione delle tue query
Sezione intitolata Creazione delle tue queryPer ottenere i tuoi post, importa e utilizza getXataClient()
in un file .astro
. L’esempio seguente prende i primi 50 post dal Sample Blog Database di Xata.
È importante notare che l’SDK deve essere rigenerato ogni volta che lo schema viene modificato. Pertanto, evita di apportare modifiche ai file generati/dalla Xata CLI, perché una volta che lo schema viene aggiornato, le tue modifiche saranno sovrascritte.