Dalam menampilkan data dengan CGridView Yii, mungkin ada field yang ditampilkan dengan setting tertentu, dan tidak ditampilkan dalam setting tertentu. Sebagai contoh saya mempunyai tabel purchase_item dengan field match_with_req. Field match_with_req akan ditampilkan jika setting always_use_pr =1. Jadi jika aplikasi kita mengharuskan proses bisnis Purchase Request atau Permintaan Pembelian, maka field match_with_req akan ditampilkan, tetapi jika proses bisnis Purchase Order tidak memerlukan Purchase Request atau Permintaan Pembelian, maka field match_with_req tidak perlu ditampilkan.
Langkah-langkahnya adalah sebagai berikut
- Pada view/admin yang bersangkutan mendapatkan setting misalnya dengan coding berikut ini
$always_use_pr= 0 + TblSetting::model()->findByAttributes(
array(‘param1’=>’purchase_order’,
‘param2’=>’always_use_pr’,’is_active’=>1))->setting_value; - Kemudian pada CGridView pada field yang bersangkutan atur show/hidenya dengan property visible misalnya
$this->widget(‘zii.widgets.grid.CGridView’, array(
‘id’=>’group-menu-grid’,
‘ajaxUpdate’=>false,
‘dataProvider’=>$detailDataProvider,
‘columns’=>array(
array(
‘class’=>’CButtonColumn’,
………………………………….
),
‘no_seq’,
‘item.item_name’,
………………………………….
‘unit.unit_code’,
array(
‘name’=>’match_with_req’,
‘value’=>’Umum::getYesNoStr($data->match_with_req)’ ,
‘visible’=>$always_use_pr,
),
),
)); - Silahkan mencoba
Artikel yang mirip dengan ini adalah http://www.proweb.co.id/articles/web_application/show_field_cdetailview.html dan http://www.proweb.co.id/articles/web_application/show_hide_cbuttoncolumn_yii.html .
Kunjungi www.proweb.co.id untuk menambah wawasan anda.