Cara Ubah Tampilan CGridView

para masta yii salam super :)

ane mau tanya nih, gmn caranya ya cara mengubah tampilan/layout css punya CGridView biar ga selalu biru, ane inginnya pakai css sendiri.

ane tamabahin ini ini gan di

protected/config/main.php




'components'=>array(

  'widgetFactory'=>array(

     'widgets' => array (

         'cssFile' => '/css/style-gridview.css',

     )

  ),

);



tapi masih blm brhasil, apanya yg salah ya?? mohon bantuannya, semoga bermanfaaat juga buat yg lain

Itu kalo mau pake skin, carany bisa dilihat di

http://www.yiiframework.com/doc/guide/1.1/en/topics.theming#skin

well, cara ini banyak kelemahannya sih…

kalo pengen CSS tertentu ya setiap bikin widget diset CSS filenya




<?php

$this->widget('zii.widgets.grid.CGridView', array(

        //...

	'cssFile' => '/css/style-gridview.css',

));

?>



atau kalo gak mau repot ngeset cssFile setiap kali ngebikin widget dan gak mau repot-repot bikin skin

tinggal bikin WidgetFactory aja yang baru di protected/components/




class WidgetFactory extends CWidgetFactory {


	public $cssFile = '';


	public function createWidget($owner, $className, $properties=array()) {

		$properties['cssFile'] = $this->cssFile;

		return parent::createWidget($owner, $className, $properties);

	}


}



terus taro di protected/config/main.php




'components'=>array(

  'widgetFactory'=>array(

      'class' => 'WidgetFactory',

      'cssFile' => '/css/style-gridview.css',

  ),

);



N.B.: belum saya coba sih, tapi harusnya bisa.

Berhasil juga… :lol:

makasih bung petra yang setia membantu atas jawaban dan referensinya.

pake cara apa?

ho’oh pake cara yang mana ni gan?,

next setelah pekerjaan selesai, ane mau nyoba rubah tampilan. :D

Klo berkenan mohon di share. :)

saya pakai cara omp petra


<?php

$this->widget('zii.widgets.grid.CGridView', array(

        //...

        'cssFile' => '/css/style-gridview.css',

));

?>

semoga membantu

sip dah gan. Btw klo ud selesai , postinannya jangan lupa di Solved ya gan :D

biar mempermudah pengunjung forum. :D

jeleknya cara yg dipake itu adalah setiap kali mau bikin widget yg sama harus paste link ke cssFile yg sama,

sebenernya kalo mau ganti sih tinggal search and replace aja…

tapi kalo mau dibikin otomatis semua widget yg sama punya cssFile yg sama ya pake widgetFactory aja

lbih baik pake ini aja:




'components'=>array(

  'widgetFactory'=>array(

      'widgets' => array(

         'CGridView' =>array(

            'cssFile'=>'css/file.css',

         ),

      ),

  ),

);



dengan code yang diatas kita tidak perlu membuat class lagi.

dan dapat memilih widgetmana yang akan kita modifikasi cssFile-nya…

coba baca yang ini CWidgetFactory

Semoga membantu. ;)

Yup yup,

pake cara yang di atas juga bisa, kalo pengen ngubah spesifik satu jenis widget aja :)

thanks for sharing.