Supabase è un'alternativa open-source a Firebase che fornisce un database PostgreSQL, autenticazione, storage e funzioni serverless. In questa guida, vedremo come utilizzare Supabase con Python per gestire dati in un database.
Installazione
Prima di tutto, installiamo il client Python di Supabase:
pip install supabase
Configurazione
Per connettersi a Supabase, è necessario ottenere l'URL e la chiave API dal proprio progetto Supabase.
from supabase import create_client, Client
url = "https://your-project.supabase.co"
key = "your-anon-key"
supabase: Client = create_client(url, key)
Inserimento di dati
Per aggiungere dati a una tabella, utilizziamo il metodo insert
:
data = {"nome": "Mario", "cognome": "Rossi", "email": "mario.rossi@example.com"}
response = supabase.table("utenti").insert(data).execute()
print(response)
Lettura di dati
Per leggere i dati da una tabella, utilizziamo il metodo select
:
response = supabase.table("utenti").select("*").execute()
print(response.data)
Aggiornamento di dati
Per aggiornare un record specifico, possiamo utilizzare il metodo update
:
response = supabase.table("utenti").update({"email": "nuova.email@example.com"}).eq("nome", "Mario").execute()
print(response)
Eliminazione di dati
Per eliminare un record, utilizziamo il metodo delete
:
response = supabase.table("utenti").delete().eq("nome", "Mario").execute()
print(response)
Gestione dell'autenticazione
Supabase fornisce un sistema di autenticazione basato su email e password. Per registrare un utente:
response = supabase.auth.sign_up({"email": "utente@example.com", "password": "password123"})
print(response)
Per effettuare il login:
response = supabase.auth.sign_in_with_password({"email": "utente@example.com", "password": "password123"})
print(response)
Conclusione
Supabase è una potente piattaforma che semplifica la gestione di database e autenticazione in Python. Con questa guida, hai le basi per iniziare a usare Supabase nel tuo progetto.