2.3 Struttura del file di CakePHP

Andiamo a dare un'occhiata a come CakePHP appare quando è stato appena installato. Già siamo a conoscenza di come CakePHP svolga il proprio lavoro, come un punto per la raccolta di richieste di tipo MVC di base, ma dobbiamo imparare anche come i suoi file sono organizzati.

  • app
  • cake
  • docs
  • index.php
  • vendors

Quando scaricate CakePHP vedrete quattro directory principali. La directory app sarà quella dove svolgerete la maggior parte delle vostre "magie": è dove i file della vostra applicazione saranno salvati. Il folder cake è dove noi abbiamo fatto le nostre "magie". Non possiamo aiutarvi se andrete a modificare il core. La directory docs è per i file di tipo readme, changelog ed informazioni di licenza d'uso. In ultimo, la directory vendors è quella dove potrete mettere le librerie di terze parti di cui avete bisogno per utilizzarle all'interno della vostra applicazione CakePHP.

2.3.1 La directory App

La directory app di CakePHP è il posto dove voi farete la maggior parte del vostro lavoro di sviluppo. Andiamo a dare un'occhiata più da vicino ad essa e vediamo quali cartelle vi sono contenute.

config Contiene i (pochi) file di configurazione che CakePHP utilizza. I dettagli di connessione col database, bootstrapping, file di configurazione del core e altro dovrebbero essere salvati qui.
controllers Contiene i vostri controller ed i loro componenti.
locale Qui vanno posti i file per le stringe di internazionalizzazione.
models Contiene i model, behavior e datasource per la vostra applicazione.
plugins Contiene i pacchetti plugin utilizzati.
tmp Questo è il posto dove CakePHP salva i file temporanei. I dati che vengono salvati dipendono da come avete configurato CakePHP, ma questa directory è di solito usata per salvare le descrizioni dei modelli, i file di log e, talvolta, anche le informazioni di sessione.
vendors Ogni classe o libreria di terze parti dovrebbe essere posizionata qua. Facendo questo sarà facile accedervi utilizzando la funzione vendor(). Osservatori attenti potrebbero aver notato come questo possa apparire ridondante, dato che esiste anche una directory vendors al livello principale della nostra struttura. Andremo ad osservare le differenze tra le due cartelle quando andremo a discutere della gestione di diverse applicazioni e di settaggi di sistema più complessi.
views I file di presentazione vanno salvati qui: file per element, pagine di errore, helper, layout e view.
webroot In un setup di produzione, questa cartella dovrebbe servire come root della vostra applicazione. Sottocartelle poste qui possono servire anche a contenere CSS stylesheets, immagini e file JavaScript.