@kat-vetal

Выборка из БД всех полей кроме первого?

Вытягиваю из бд данные и вывожу их таблицей. В таблице которая выводится на данный момент 3 строки, Как вывести все строки кроме первой.
Код вывода
<?php Pjax::begin(); ?>
    <?= GridView::widget([
        'filterUrl' => Url::toRoute('index'),
        'dataProvider' => $dataProvider,
        'filterModel' => $searchModel,
        'columns' => [
            ['class' => 'yii\grid\SerialColumn'],
            'id',
            [
                'attribute'=>'company_types__alias',
                'label'=> $Package->t('', 'Тип'),
                'format'=>'text',
                'content'=>function($data){
                    if ($data->type != null)
                    return $data->type->title;
                },
                'filter' => CompanyTypes::getList()
            ],
            'alias',
            'name',
            'email',
            'phone',
            [
                'class' => 'yii\grid\ActionColumn',
                'template' => '{view} {update} '
            ],
        ],
    ]); ?>
    <?php Pjax::end(); ?>
  • Вопрос задан
  • 200 просмотров
Пригласить эксперта
Ответы на вопрос 2
slo_nik
@slo_nik Куратор тега Yii
Добрый день.
Как вариант - перечислить поля, которые надо вывести
Model::find()->select(['name', 'surname'])->one()

p.s. Так же обратите внимание на limit and offset
Ответ написан
Комментировать
@Skit25
на всё воля Бога
В yii1 было свойство которое считает итерации, можно по нему visible=> (count != 1).

Можно попробовать задать свойство объекту и сделать через тот же visible=> ($data->visible). Вернуть при первом обращении false и далее true.

Либо сделать выборку без первого значения, а потом сформировать dataProvider (active, array). Например у LIMIT в mysql можно задать два параметра [offset,] rows]. Возможно, тот же LIMIT можно скормить провайдеру (нет возможности сейчас проверить)

Возможно (сейчас нет возможности проверить) после создания dataProvider, можно сделать unset лишнего значения.
Либо, если можно выяснить id записи которой не должно быть, то через тот же visible.

Хотя, я сторонник, чтобы изначально лишнее не попадало в цель.

Ну или в самый крайний случай использовать JS, хотя это прямо пилюля с ядом в воротнике, но как здесь и сейчас, временно - сойдет.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы