Pillole di PHP e Yii

Spread the love

Yii è un framework di sviluppo PHP secondo il pattern MVC di cui ho parlato qui e qui. Il sito (fornitissimo) è qui.

La pillola riguarda la gestione dei campi data, campi testo (in html < 5 non esistono i campi data) ai quali Yii aggiunge funzionalità tipiche di un controllo per le date:

Il frammento con cui si definisce questo comportamento è il seguente

    $this->widget('zii.widgets.jui.CJuiDatePicker',array(
        'name'=>'Payment[deadline]',
        'model'=>$model,
        'attribute'=>'deadline',
        'value'=>$model->deadline,

        'options'=>array(
            'showAnim'=>'slide',
            'dateFormat' => 'yy-mm-dd',
            'defaultDate'=>$model->deadline,
        ),
        'language'  => 'it',
        'htmlOptions'=>array(
            'style'=>'height:20px;background-color:lightgreen;color:white;',
        ),
    ));

Attenzione all’array passato come argomento al widget(), evidenziato in grassetto:

  • ‘name’ => ‘Payment[deadline]’ ← è il nome della classe [nome dell’attributo], in questo caso classe = Payment, attributo = deadline
  • ‘model’=>$model,                       ← modello a cui fa riferimento la view
  • ‘attribute’=>’deadline’,                ← nome dell’attributo
  • ‘value’=>$model->deadline,     ←valore dell’attributo

Quest’ultimo attributo (value) fa in modo che venga visualizzata la data nel campo testo.

Invece l’attributo

'defaultDate'=>$model->deadline

invece fa in modo che nel calendario drop down venga evidenziata con un rettangolino la data come si vede in figura:

Yii-cjuiDatePicker

 

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.