@urfinjazz

Yii2 GridView: можете ответить на вопросы?

Добрый день!
Делал тестовое задание на Yii2, вроде получилось сделать то, что просили: ссылка
логин: admin, пароль: 123456

Но! Некоторые моменты получилось реализовать ну совсем через одно место...
Вопросы:
1) Можно ли для таблицы задавать нулевые value? т.е. отображать только поле для поиска, но скрывать содержимое таблицы?
2) Как прописывать placeholder полю?
так:
[
'attribute' => 'name',
'format' => 'html',
'filter' =>'<input type="text" placeholder="название книги" class="form-control" name="BooksSearch[name]">',
]

работает,
так:
[
'attribute' => 'name',
'format' => 'raw',
'filter' =>
   function ($model, $index, $widget) {
            return '<input type="text" value="'.$model->name.'"
              placeholder="название книги" class="form-control" name="BooksSearch[name]">';
          },
 ]

не работает

3) Как добавить первый (который пустой) option к dropdown-list?
выглядит так:
[
'attribute' => 'author_id',
'value' => 'author.fullname',
'filter' => $authors_list
],

всегда добавляется пустое поле в начало, что бы я не делал

P.S. Есть ещё 4 вопрос, который вообще не получилось реализовать:
можно ли в GridView сделать поиск после нажатия на кнопку, а не по блюру?

Спасибо!
  • Вопрос задан
  • 2033 просмотра
Пригласить эксперта
Ответы на вопрос 1
@LAV45
2) Что значит "не работает" ?..
Смотрим где GridView рендарит columns
https://github.com/yiisoft/yii2/blob/master/framew...
Смотрим описание класса DataColumn
https://github.com/yiisoft/yii2/blob/master/framew...
$filter не может быть callback
поэтому добавляем колонку не на авось или методом тыка, а согласно описанию в классе.
GridView::widget([
    'dataProvider' => $dataProvider,
    'filterModel' => $searchModel,
    'columns' => [
        [
            'attribute' => 'name',
            'filterInputOptions' => [
                'placeholder' => 'название книги',
                'class' => 'form-control',
                'id' => null,
            ]
        ]
    ]
]);


3) DataColumn сам его туда добавляет
https://github.com/yiisoft/yii2/blob/master/framew...
Ответ написан
Ваш ответ на вопрос

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

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