配置model檔案,返回cactivedataprovider物件。
public function
search
()複製**
在模板檔案中,通過widget使用cgridview小物件。
$this->widget('zii.widgets.grid.cgridview', array());
複製**
通過dataprovider接收物件。
$this->widget('zii.widgets.grid.cgridview', array(
'id' => 'post-grid',
'dataprovider' => $searchmodel->search(),
);複製**
加上搜尋框
'filter' => $searchmodel(),
model檔案,rules屬性return加上要搜尋的字段:
array('title, type, addr, status, show_time', 'safe', 'on'=>'search'),
複製**
columns為展示的字段。filter搜尋框為下拉列表。'class'=>'cbuttoncolumn'為按鈕,其中,'view','update','delete'按鈕名特殊處理。
'columns'=>array(
'title',
array(
'name' => 'type',
'value'=> function($data),
'filter' => enquirysetting::dropdown('type'),
),'addr',
array(
'name' => 'status',
'value'=> function($data),
'filter' => enquirysetting::dropdown('status'),
),'show_time',
array(
'class'=>'cbuttoncolumn',
'template'=>'',
'buttons'=>array
('edit' => array
('label'=>yii::t('label', 'update').' ',//按鈕名稱
'visible'=>"userrolepermissionutilities::checkuserpagepermission('/***/edit', 'w')",//許可權控制
),'delete' => array
('label'=>yii::t('label', 'delete'),//按鈕名稱
'visible'=>"userrolepermissionutilities::checkuserpagepermission('/***/delete', 'w')",//許可權控制
),),
'deleteconfirmation'=>yii::t('product','del_confirm'),
),),複製**
下拉列表返回
public static function dropdown($column,$value=null)
複製**
附上完整**
controller
public function
actionchaticon
() $criteria = new cdbcriteria();
$count = enquirysetting::model()->count($criteria);
$this->render( 'chat-icon',array( 'count'=>$count,'searchmodel'=>$searchmodel ) );
}複製**
view
<?php
if (empty($count)) else ,
'filter' => enquirysetting::dropdown('type'),
),'addr',
array(
'name' => 'status',
'value'=> function($data),
'filter' => enquirysetting::dropdown('status'),
),'show_time',
array(
'class'=>'cbuttoncolumn',
'template'=>'',
'buttons'=>array
('edit' => array
('label'=>yii::t('label', 'update').' ',
'visible'=>"userrolepermissionutilities::checkuserpagepermission('/onlineshop/chaticon', 'w')",
),'delete' => array
('label'=>yii::t('label', 'delete'),
'visible'=>"userrolepermissionutilities::checkuserpagepermission('/onlineshop/chaticon', 'w')",
),),
'deleteconfirmation'=>yii::t('product','del_confirm'),
),),
));?>
<?php
}?>
複製**
model
class enquirysetting extends cactiverecord
public function
tablename
()
public function
rules
()
public function
attributelabels
()
public function
search
()
public static function dropdown($column,$value=null)
}複製**
Yii把CGridView文字框換成下拉框的方法
使用yii的朋友都知道yii中的cgridview預設顯示提文字框了,那麼我們要怎麼把它轉換成下拉框呢?本文就此分析一下解決方法。預設情況下cgridview會生成乙個文字框,但是這並不友好,使用者往往希望知道有什麼可選的,特別是資料庫裡存的是數字id的時候,我們希望將數字轉換為可讀的文字,這時候只...
Yii中CGridView禁止列排序的設定方法
yii中cgridview的功能是用來顯示的資料列表。它支援排序,分頁,和ajax資料請求。下面的 演示了cgridview禁止列排序的設定方法 columns array array class ccheckboxcolumn selectablerows abaryqkdba 2 value d...
yii1 1 x學習筆記(3)快取
1 片段快取 在view中的快取html片段起始新增 begincache cachename array duration 3600,設定快取過期時間 vartbyparam array param 設定變化快取,生成不同的快取 class ststem.caaching.dependencies...