Skip to main content

YII CGRIDVIEW drop down filter

 <?php  
 $this->widget('zii.widgets.grid.CGridView', array(  
   'itemsCssClass' => 'table table-hover table-striped table-bordered table-condensed',  
   'id' => 'orders-grid',  
   'dataProvider' => $model->search(),  
   'filter' => $model,  
   'columns' => array(  
     'order_id',  
     'user_id',  
     array(  
       'header' => 'Product Name (QTY)',  
       'value' => 'OcProductDescription::model()->order_products("$data->offer_ids")',  
     ),  
     'offer_ids',  
     'order_total',  
     'order_status',  
     'payment_status',  
// this code below is used to create drop down filter
     array(  
       'name' => 'affiliate',  
       'value' => 'Orders::model()->getAffiliateValue($data->affiliate)',  
       'filter' => array(  
         '1' => 'ΓΑΙΤΑΝΗΣ ΒΑΣΙΛΕΙΟΣ',  
         '2' => 'ΘΕΟΔΩΡΟΣ ΚΑΜΠΟΛΗΣ',  
         '3' => 'ΑΘΗΝΑ ΦΡΑΓΚΟΥ',  
       )  
     ),  
     'order_date',  
     array(  
       'class' => 'CButtonColumn',  
     ),  
   ),  
 ));  
 ?>  

Popular posts from this blog

yii, Executing a SQL without calling a Model

yii, Executing a SQL without calling a Model <? $connection = Yii :: app () -> db ; $sql = "SELECT id,username FROM users" ; $command = $connection -> createCommand ( $sql ); $dataReader = $command -> query (); $rows = $dataReader -> readAll (); print_r ( $rows ); ?>

Yii, return to previous url after login or logout

If you want to return to your previous url after login or logout try this : <?php $this -> redirect (Yii :: app () -> request -> urlReferrer ); ?> To set the return url to be the url that was before the login page or registeration page was called you can put following code in views/layouts/main.php file : <?php //this checks id the controller action is not 'login' then it keeps the current url in returnUrl if (CController :: getAction () -> id != 'login' ) { Yii :: app () -> user -> setReturnUrl (Yii :: app () -> request -> getUrl ()); } ?>

Yii2 Gridview bulk action using checkbox column. How to properly create checkbox column in gridview for bulk actions

To add a CheckboxColumn to the  yii\grid\GridView , add it to the  columns  configuration as follows: 'columns'  => [      // ...      [          'class'  =>  'yii\grid\CheckboxColumn' ,          // you may configure additional properties here      ], ] This is the view: <?= Html :: beginForm ([ 'controller/bulk' ], 'post' );?> <?= Html :: dropDownList ( 'action' , '' ,[ '' => 'Mark selected as: ' , 'c' => 'Confirmed' , 'nc' => 'No Confirmed' ],[ 'class' => 'dropdown' ,])?> <?= Html :: submitButton ( 'Send' , [ 'class' => 'btn btn-info' ,]);?> <?= GridView :: widget ([ 'dataProvider' => $dataProvider , 'columns' => [ [ 'class' => 'yii\grid\CheckboxColumn' ], 'id' , ], ]); ?> <?= Html :: endForm...