asep
(Asep Mylocal)
1
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
petra
(Petra Barus)
2
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.
asep
(Asep Mylocal)
3
Berhasil juga…
makasih bung petra yang setia membantu atas jawaban dan referensinya.
ho’oh pake cara yang mana ni gan?,
next setelah pekerjaan selesai, ane mau nyoba rubah tampilan.
Klo berkenan mohon di share.
asep
(Asep Mylocal)
6
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
biar mempermudah pengunjung forum.
petra
(Petra Barus)
8
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
suhanda
(Dedi S84)
9
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.
petra
(Petra Barus)
10
Yup yup,
pake cara yang di atas juga bisa, kalo pengen ngubah spesifik satu jenis widget aja
thanks for sharing.