Cdetailview E Layout


(Stefano) #1

Ciao a tutti,

Cosa consigliate per avere un layout "decente" con zii.widgets.CDetailView? Conviene usare qualche altro widgets?

Sarebbe possibile riusare la _form?

Grazie mille.

Stefano


(Fabrizio Caldarelli) #2

Dipende cosa intendi per decente


(Stefano) #3

Ciao,

Intendevo se era possibile avere più valori per riga e non avere una tabella a 2 colonne molto lunga.

esempio:

nome:xxx cognome: xxxx età: xxx codice: xxxx

via: xxxx comune: xxxxx Provincia: xxxx cap:xxxx

Grazie Stefano


(Fabrizio Caldarelli) #4

Si, è possibile, ma a quel punto devi costruirti l’html.

Io spesso utilizzo il contenuto di _form.php (in modo tale che l’impostazione è personalizzata), mettendo tutti i controlli disabled o readonly (tramite jquery, quindi un riga di codice per bloccare per tutti i controlli).


(Stefano) #5

Usi cdetailview? Mi dici i punti essenzialie da seguire per usare la _form.php in view.php ( se non e’ un problema ).

Grazie

Stefano


(Fabrizio Caldarelli) #6

Nel file _form.php ho impostato una visualizzazione a 2 colonne, come nel tuo caso.

Dopodichè nel file view.php ho messo:




<?php Yii::app()->clientScript->registerScript('form_clienti',

'

    $(function()

    {

       $("input").attr("disabled", "true");

       $("select").attr("disabled", "true");

       $("textarea").attr("disabled", "true");

       

       $("input[type=\"submit\"]").remove();  

    });

    

  

'); ?>


<h1>Dettaglio</h1>


<?php echo $this->renderPartial('_form', array('model'=>$model)); ?>

Quindi richiamo la vista _form.php e tramite jquery disabilito tutti gli input, select e textarea. Infine rimuovo anche il submit (del form).

Così ogni modifica fatta nel _form.php, automaticamente viene riportata anche per la visualizzazione.


(Stefano) #7

Chiarissimo. :D

Grazie mille.

Stefano