Prima di proseguire nella guida è bene soffermarci un momento sulla struttura del file system della nostra applicazione. Abbiamo organizzato nella seguente tabella le informazioni dettagliate su come il framework organizza i file e le directory di una webapp. Per ogni cartella e file è presente una breve descrizione della sua funzione che vi aiuterà nel capire a cosa serve quella specifica cartella o specifico file.
applicazione
index.php //il file di ingresso per l’applicazione
index-test.php //il file di ingresso per i test sull’applicazione
assets/ //contiene file pubblicati in precedenza
css/ //contiene i fogli di stile
images/ //contiene le nostre immagini
themes/ //contiene i temi dell’applicazione
protected/ //contiene i file protetti dell’applicazione
yiic //yiic command line script per utenti Linux
yiic.bat //yiic command line script per utenti Windows
yiic.php //yiic command line PHP script
commands/ //contiene i comandi personalizzati per le applicazioni consolle
shell/ //contiene i comandi shell personalizzati per le applicazioni console
components/ //contiene i componenti
Controller.php //la classe base del controller
UserIdentity.php //classe usata per l’autenticazione
config/ //contiene i file di configurazione
console.php //file di configurazione per le applicazioni console
main.php //file di configurazione per le applicazioni web
test.php //file di configurazione per le unit test
controllers/ //contiene le classi controller
SiteController.php //il controller di deafult dell’applicazione
data/ //dati di esempio del database
schema.mysql.sql //the DB schema di MySql
schema.sqlite.sql //the DB schema di SqlLite
testdrive.db //dati esempio di SqlLite
extensions/ //contiene le estensioni di terze parti
messages/ //contiene la traduzione del testo nelle varie lingue
models/ //contiene le classi di tipo model
LoginForm.php //model login
ContactForm.php //model contatti
runtime/ //file temporanei generati in fase di esecuzione
tests/ //contiene i file di test
views/ //contiene le viste e il layout dell’applicazione
layouts/ //contiene il layout
main.php //il layout condiviso da tutte le pagine
column1.php //layout a singola colonna
column2.php //layout a doppia colonna
site/ //vista per il controllo site
pages/ //contiene pagine statiche
about.php //vista della pagina about
contact.php //la vista della pagina contatti
error.php //la vista degli errori
index.php //la vista della pagina index
login.php //la vista per l’action login
Ricordo che queste cartelle sono situate all'interno della directory della nostra applicazione poiché in fase di creazione abbiamo scelto questa soluzione. Si veda il paragrafo installazione per ulteriori chiarimenti.
Path e alias
Yii dispone di una serie di alias che ci consentono facilmente di puntare alle cartelle con pochi comandi. In un'applicazione Yii ci sono delle cartelle ritenute fondamentali ed è proprio su di esse che sono definiti gli alias.
Esistono 5 alias predefiniti che sono:
- System: la directory principale del framework, framework appunto
- Zii: si riferisce alla directory zii di cui parleremo più avanti
- Application: si riferisce alla directory protected
- Webroot: si riferisce alla cartella in cui abbiamo creato l'applicazione
- Ext: la cartella extensions
Se vuoi aggiornamenti su Development inserisci la tua email nel box qui sotto: