Vai al contenuto principale
Stai visualizzando la documentazione per sviluppatori
Questa documentazione è per sviluppatori che lavorano con la piattaforma per sviluppatori di Base44. Per informazioni sulla gestione dei dati della tua app usando l’editor, consulta Gestire i dati dell’app.
L’entità User esiste in ogni progetto Base44 per impostazione predefinita e memorizza informazioni sugli utenti della tua app. Puoi aggiungere campi per memorizzare dati utente aggiuntivi, poi usare quei campi nelle regole di sicurezza per controllare l’accesso ai dati o nella tua app per personalizzare l’esperienza.

Campi integrati

Ogni entità User include un insieme di campi integrati per impostazione predefinita.
CampoTipoDescrizione
full_namestringNome visualizzato dell’utente
emailstringIndirizzo email dell’utente
rolestringadmin oppure user
L’entità User ha anche i campi integrati generali che esistono su tutte le entità, come id e created_date. Questi campi sono gestiti dal sistema e non possono essere ridefiniti nel tuo schema.

Campi personalizzati

Per aggiungere campi personalizzati, definisci uno schema User contenente solo i tuoi campi aggiuntivi. Tentare di ridefinire i campi integrati causerà un errore di validazione. Crea un file User.json o User.jsonc nella directory delle entità del tuo progetto. Per impostazione predefinita è base44/entities/, ma puoi personalizzare il percorso nella configurazione del progetto.
entities/User.json
{
  "type": "object",
  "properties": {
    "company": { "type": "string" },
    "phone": { "type": "string" },
    "job_title": { "type": "string" },
    "bio": { 
      "type": "string",
      "maxLength": 500
    }
  },
  "required": ["company"]
}
Poi invia le tue entità a Base44 usando entities push o deploy.

Esempio completo

Ecco uno schema User completo con vari tipi di campo:
{
  "type": "object",
  "properties": {
    "company": {
      "type": "string"
    },
    "phone": {
      "type": "string"
    },
    "job_title": {
      "type": "string",
      "maxLength": 100
    },
    "bio": {
      "type": "string",
      "maxLength": 500
    },
    "website": {
      "type": "string",
      "format": "uri"
    },
    "preferences": {
      "type": "object",
      "properties": {
        "theme": {
          "type": "string",
          "enum": ["light", "dark"],
          "default": "light"
        },
        "notifications": {
          "type": "boolean",
          "default": true
        }
      }
    }
  },
  "required": ["company"]
}

Usare i tuoi campi

Una volta definito e inviato il tuo schema User, puoi referenziare i tuoi campi nelle regole di sicurezza e accedervi nel codice della tua app.

Nelle regole di sicurezza

Puoi usare i campi utente per controllare l’accesso ad altre entità. Ad esempio, potresti limitare gli utenti a vedere solo i record che appartengono alla loro azienda. Per referenziare i campi utente nelle regole di sicurezza, usa la sintassi template {{user.data.*}}:
{
  "rls": {
    "read": {"data.company": "{{user.data.company}}"},
    "update": {"data.company": "{{user.data.company}}"}
  }
}
Questa regola garantisce che gli utenti possano leggere e aggiornare solo i record in cui il campo company del record corrisponde al proprio.

Nel codice

Accedi ai campi utente tramite l’SDK:
// Get current user's fields
const currentUser = await base44.auth.me();
console.log(currentUser.company); // "Acme Inc"

// Update current user's fields
await base44.auth.updateMe({
  phone: "+1-555-0123",
  job_title: "Senior Developer"
});

// List all users with service role (backend functions only)
const allUsers = await base44.asServiceRole.entities.User.list();
Questo esempio usa un client base44. Consulta Configurare il client per le istruzioni di configurazione.

Vedi anche

Questa pagina è stata tradotta utilizzando l’IA. Per informazioni più accurate e aggiornate, consulta la versione inglese.