Indice

🟦Pronta 🟨Bozza 🟥Da scrivere

Le Entità

Cosa sono. Tipi di Entità e Bundle. Identificativo di Entità. Pagina di Entità.
Aggiornata il:
Stato: 🟦Pronta

Con questa Guida iniziamo ad entrare nel merito di come costruire la tua app con Drupal. Come suggerito dal metodo che abbiamo visto, partiamo da come rappresentare in Drupal i dati necessari alla tua app.

Cos'è una Entità

Una Entità è un insieme strutturato di dati che viene creato, modificato o eliminato come un tutt'uno: ciò significa che se una Entità viene eliminata, vengono cancellate tutte le informazioni in essa contenute; se un Utente ha il permesso di modificare una Entità, può modificarne tutte le informazioni.

APPROFONDIMENTO: In Drupal ci sono due famiglie di Entità: le Entità di contenuto (content entities) e le Entità di configurazione (configuration entities). Una Entità di contenuto è una entità che contiene le informazioni relative ad un oggetto, una persona, un documento ecc. Una Entità di configurazione contiene invece le informazioni relative ad una configurazione di Drupal. Incontreremo molte Entità di configurazione, tra cui le Viste, i Menù, i Formati di testo ecc. Ai fini di MieApp, se non specificato diversamente, con "Entità" intendo "Entità di contenuto".   

Tipi di Entità

Non tutte le Entità sono uguali. Ad esempio: l'Entità che rappresenta un Utente deve necessariamente contenere le credenziali (nome utente e password) che la persona usa per entrare nella app; solo per Entità di tipo Utente Drupal mette a disposizione le funzioni di login. Invece, una Entità che rappresenta un file ha necessariamente una dimensione in MB; solo per Entità di tipo File Drupal mette a disposizione funzioni di upload e download. 

Drupal gestisce nativamente diversi tipi di Entità, tra cui i Contenuti, gli Utenti, i Termini di Tassonomia, i File, i Media, i Commenti. I moduli aggiuntivi possono a loro volta aggiungere altri tipi di Entità; ad esempio, il modulo "Gruppi" aggiunge le Entità di tipo Gruppo. Alcuni tipi di Entità prevedono una ulteriore specializzazione, detta Bundle. I tipi di Entità predefiniti in Drupal e i corrispondenti Bundle sono:

L'identificativo di Entità

Ad ogni Entità è associato un numero intero che lo identifica univocamente rispetto alle altre Entità dello stesso tipo. Ad esempio, l'Amministratore è l'Utente identificato dal numero "1" ed è l'unico Utente ad avere quel numero; nulla vieta che esista un Contenuto o un File identificati da "1". Il numero univoco è assegnato automaticamente all'Entità nel momento in cui viene creata e non può essere modificato, neppure dall'Amministratore. Se l'Entità viene eliminata, il suo identificativo non viene riciclato. L'identificativo è memorizzato in un apposito Campo dell'Entità, il cui nome varia leggermente col tipo di Entità: ID per i Contenuti, UID per gli Utenti, TID per i Termini di Tassonomia ecc.

La pagina dell'Entità

Ad ogni Entità corrisponde una pagina che la mostra. L'indirizzo che richiama la pagina differisce in base al tipo di Entità. Ad esempio, un Contenuto con ID=1234 è mostrato nella pagina /node/1234 mentre l'Utente con UID=5678 è mostrato nella pagina  /user/5678