0

PHP フレームワーク Yii を使用します。ご存知のように、デフォルトの CGridView テーブル CSS クラスはitemsです。さて、私はこの値を変更したいと思います。特定のウィジェットで可能であることは知っています。このような:

<?php $this->widget('zii.widgets.grid.CGridView', array(
    'id'=>'user-grid',
    'dataProvider'=>$model->search(),
    'columns'=>array(),
    'itemsCssClass'=>'gridtablecss',
)); ?>

しかし、Yii アプリケーション全体でこれを行うにはどうすればよいでしょうか? つまり、デフォルトを別のクラスにしないことを意味しますitems

4

2 に答える 2

0

extensions フォルダーに別の php ファイルを作成し、MyGridView.php という名前を付けます。

<?php
Yii::import('zii.widgets.grid.CGridView');

class MyGridView extends CGridView {

    public function init() {

        // Set default CSS class
        $this->itemsCssClass = 'gridtablecss';

        // Other modifications, i.e.: Increase page size
        if ($this->dataProvider !== null)
            $this->dataProvider->pagination->pageSize = 999999;

        parent::init();
    }
}

CGridView を使用する代わりに、新しい CGridView を次のように使用します。

<?php $this->widget('MyGridView', array(

main.php設定ファイルが拡張機能をインポートしていることを確認してください。

'import' => array(
    'application.extensions.*',
    ...
),

CListView (およびその他の同様のコア Yii クラス) を同じ方法で拡張することもできます。

于 2013-04-30T01:51:02.447 に答える