Appunti su Yii Framework/1

Ogni tanto mi piace cominciare a studiare qualcosa di nuovo. Tempo fa decisi di studiare Yii Framework ma una serie di eventi mi impedì di cominciare. Oggi ho deciso di riprendere.

Questi sono una serie di appunti sconclusionati che ho preso in questa prima giornata di studio. Sicuramente ci sono altre cose che ho imparato e che sono troppo pigro per scrivere, ma cercherò di tenere una lista abbastanza aggiornata.

Controllare i requisiti per Yii

Una volta scaricato l’archivio, basta visitare http://host/path/di/Yii/requirements/index.php per avere una panoramica dettagliata sul supporto a Yii da parte del nostro server.

Creare un’applicazione

Per creare un’applicazione è possibile utilizzare il comando yiic:

[justb@dellill YiiApps]$ yiic webapp demoApp
Create a Web application under '/home/justb/public_html/YiiApps/demoApp'? [Yes|No] y

Creare un link ad una pagina

Per creare un link ad una pagina, invece di scriverlo staticamente, è possibile sfruttare Yii CHtml:

<?php echo CHtml::link("TestoLink", array('controller/azione')); ?>

Importare una classe

Yii fornisce una valida alternativa ai metodi include/require: Yii:import:

Yii::import('application.controllers.MioNomeController');

Yii::import è più efficiente degli altri metodi, in quanto non include il file finché non ne esiste un riferimento. Come input accetta una stringa che rappresenta il path della classe da includere (application è mappato sulla cartella protected)

Test

I test unitari vanno collocati nella directory demoApp/protected/tests/unit/. Devono essere delle classi che estendono CTestCase:

<?php
class ProvaTest extends CTestCase
{
  ...
}

Se la classe da testare effettua operazioni con il database, allora estende la classe CDbTestCase:

class DbRelatedTest extends CDbTestCase
{
  ...
}

Accedere al database

La connessione al database è specificata come ‘component’ di Yii: in questo modo è possibile accedere a tale risorsa da qualsiasi classe tramite Yii::app()->db

Yii framework logo

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>