GlisWeb framework
|
Descrizione del layer di database del framework.
Il framework è in grado di operare su database multipli, anche di diverso tipo, sia per gestire i dati di lavoro sia per recuperare informazioni necessarie al proprio funzionamento. In particolare, il database che contiene i dati di funzionamento del framework è detto database di supporto, mentre gli altri sono detti database di lavoro.
Il database di supporto contiene dati strutturali come lingue, geografia, fusi orari, unità di misura, valute, e così via; anche se non è indispensabile dal momento che il framework può funzionare anche senza, svolge comunque un ruolo importante e se è possibile si consiglia sempre di installarlo.
La differenza principale fra il database di supporto e i database di lavoro è che il primo contiene informazioni non modificabili tramite l'interfaccia del framework, le informazioni contenute nelle tabelle di supporto sono ritenute parte del framework stesso e la loro modifica è considerata un aggiornamento; i database di lavoro invece sono pensati proprio per essere gestiti tramite le interfacce del framework.
Una caratteristica fondamentale delle tabelle di supporto è quella di integrare array già presenti nel framework, aggiungendo dati e informazioni. Si veda ad esempio l'array $cf['localization']['languages'] prima e dopo il file _190.localization.php. La struttura dei dati nel database non corrisponde sempre esattamente a quella degli array del framework, ma si è cercato di tenerle il più simili possibile per semplificarne la lettura e la gestione.
Normalmente il framework prevede che le tabelle abbiano una vista corrispondente, identificata dallo stesso nome della tabella al quale si aggiunge il suffisso '_view'. Queste view hanno la funzione principale di semplificare l'accesso ai dati, e vanno costruite in base agli indici delle tabelle per massimizzare le performance. Le viste devono avere la colonna 'label', che viene utilizzata normalmente nella creazione dei selettori a tendina assieme al campo 'id'.