Yii GridView

1462 ワード

viewでCGridView widgetを呼び出すコードは以下の通りです.
<?php $this->widget('zii.widgets.grid.CGridView', array(
    'dataProvider' => $userData,
    'columns' => array(
        'id', 
        'username', 
        'fullname', 
        array(
            'dataField' => 'email',
            'dataExpression' => 'CHtml::mailto($data->email)'
        ), 
        'last_login',
        array('class' => 'CRudColumn', 'header' => '  ')
    ),
));?>

上のコードから分かるように、属性dataProviderは$userDataからデータを格納するために使用されます.
次のコードは$userDataを生成するので、味わってみましょう.
$userData = new CActiveDataProvider('User', array(
    'pagination'=>array(
            //    pagination           
            'pageSize'=>10, 
    ),
    'sort' => array(
        //    csort           
        'defaultOrder' => 'username'
    )
));
 
emailフィールドでは、具体的な設定を使用して、式でemailにリンク効果を作成しました.式では、次のように使用できます.
$grid(現在のgridviewインスタンス)、$row(現在の行、indexは0から計算)、$data(現在の行のmodelインスタンス)、$this(現在の列のインスタンス).
 
デフォルトのcolumnタイプはCDataColumnで、その他はしばらくCCheckBox Column、CLinkColumn、CRudColumnを選択することができます.後でもっと多くのタイプが提供されると信じています.