To add a SerialColumn to the gridview, add it to the [[GridView::columns|columns]] configuration as follows: php 'columns' => [ ... [ 'class' => SerialColumn::className(), you may configure additional properties here ], ]
Since: 1.0
Author: Kartik Visweswaran (kartikv2@gmail.com)
Inheritance: extends yii\grid\SerialColumn, use trait ColumnTrait
 /**
  * @inheritdoc
  */
 public function renderDataCell($model, $key, $index)
 {
     if (!$this->_isContextMenu) {
         return parent::renderDataCell($model, $key, $index);
     } else {
         $options = $this->fetchContentOptions($model, $key, $index);
         $this->parseExcelFormats($options, $model, $key, $index);
         $out = $this->renderDataCellContent($model, $key, $index);
         return Html::tag('td', $out, $options);
     }
 }
Exemple #2
0
 /**
  * Renders the filter cell.
  */
 public function renderFilterCell()
 {
     if ($this->grid->filterPosition === GridView::FILTER_POS_BODY && $this->mergeHeader) {
         return null;
     }
     return parent::renderFilterCell();
 }
Exemple #3
0
 * Date: 20-02-2015
 * Time: 13:58
 */
use abhimanyu\user\models\Profile;
use kartik\alert\AlertBlock;
use kartik\grid\GridView;
use yii\helpers\Html;
/** @var $this \yii\web\View */
/** @var $dataProvider \abhimanyu\user\models\UserSearch */
/** @var $searchModel \abhimanyu\user\models\UserSearch */
$this->title = Yii::t('user', 'User Admin - ' . Yii::$app->name);
echo AlertBlock::widget(['delay' => 5000, 'useSessionFlash' => TRUE]);
?>

<?php 
echo GridView::widget(['dataProvider' => $dataProvider, 'filterModel' => $searchModel, 'columns' => [['class' => \kartik\grid\SerialColumn::className()], ['header' => '', 'value' => function ($model) {
    $avatar = Profile::findOne(['uid' => $model->id]);
    return '<div class="text-center">' . Html::img(Yii::$app->homeUrl . '/../../' . $avatar['avatar'], ['width' => 30, 'alt' => 'Profile Image']) . '</div>';
}, 'format' => 'raw'], 'username', 'email', ['attribute' => 'super_admin', 'value' => function ($model) {
    if ($model->super_admin == 1) {
        return '<div class="text-center text-success"><i class="glyphicon glyphicon-ok"></i></div>';
    } else {
        return '<div class="text-center text-danger"><i class="glyphicon glyphicon-remove"></i></div>';
    }
}, 'format' => 'raw'], ['header' => 'Status', 'value' => function ($model) {
    return $model->isStatus;
}, 'format' => 'raw'], ['class' => \kartik\grid\ActionColumn::className(), 'template' => '{confirm} {block} {update} {delete}', 'buttons' => ['confirm' => function ($url, $model) {
    if ($model->isConfirmed) {
        return Html::a('<i class="glyphicon glyphicon-ok"></i>', NULL);
    } else {
        return Html::a('<i class="glyphicon glyphicon-ok"></i>', $url, ['data-method' => 'post', 'data-confirm' => Yii::t('user', 'Are you sure you want to confirm this user?'), 'title' => Yii::t('user', 'Confirm User')]);
Exemple #4
0
use yii\bootstrap\Html;
$this->title = 'Администраторы';
$this->params['breadcrumbs'][] = $this->title;
$customerModal = new \bobroid\remodal\Remodal(['addRandomToID' => false, 'id' => 'addUser', 'confirmButton' => false, 'cancelButton' => false]);
echo $customerModal->renderModal($this->render('_new_user', ['model' => new \backend\models\SiteuserForm()]));
?>

<div class="panel panel-default">
    <div class="panel-heading">
        <?php 
echo Html::a(FA::i('plus') . Html::tag('small', 'Добавить'), '#addUser', ['class' => 'btn btn-app']);
?>
    </div>
    <div class="panel-body">
        <?php 
echo GridView::widget(['dataProvider' => $siteusersDataProvider, 'summary' => false, 'bordered' => false, 'hover' => true, 'pjax' => true, 'striped' => false, 'export' => false, 'layout' => '{items}<div class="text-center">{pager}</div>', 'containerOptions' => ['class' => 'box-body table-responsive no-padding'], 'columns' => [['vAlign' => GridView::ALIGN_MIDDLE, 'class' => SerialColumn::className()], ['vAlign' => GridView::ALIGN_MIDDLE, 'width' => '200px', 'attribute' => 'username'], ['vAlign' => GridView::ALIGN_MIDDLE, 'attribute' => 'email'], ['vAlign' => GridView::ALIGN_MIDDLE, 'width' => '100px', 'attribute' => 'status', 'value' => function ($model) {
    if ($model->status == $model::STATUS_ACTIVE) {
        return 'Активен';
    }
    return 'Не активен';
}], ['vAlign' => GridView::ALIGN_MIDDLE, 'width' => '160px', 'attribute' => 'created_at', 'value' => function ($model) {
    return \Yii::$app->formatter->asDatetime($model->created_at);
}], ['vAlign' => GridView::ALIGN_MIDDLE, 'width' => '150px', 'attribute' => 'last_visit', 'value' => function ($model) {
    return \Yii::$app->formatter->asRelativeTime($model->last_visit);
}], ['vAlign' => GridView::ALIGN_MIDDLE, 'width' => '100px', 'class' => \kartik\grid\ActionColumn::className(), 'template' => Html::tag('div', '{edit}{status}', ['class' => 'btn-group']), 'buttons' => ['edit' => function () {
    return Html::button(FA::i('pencil'), ['class' => 'btn btn-default editUser', 'title' => 'Редактировать']);
}, 'status' => function ($key, $model) {
    $active = $model->status == $model::STATUS_ACTIVE;
    return Html::button(FA::i($active ? 'unlock' : 'lock'), ['class' => 'btn changeStatus btn-' . ($active ? 'success' : 'danger')]);
}]]]]);
?>