Класс yii\grid\DataColumn
| Наследование | yii\grid\DataColumn » yii\grid\Column » yii\base\Object |
|---|---|
| Реализует | yii\base\Configurable |
| Доступно с версии | 2.0 |
| Исходный код | https://github.com/yiisoft/yii2/blob/master/framework/grid/DataColumn.php |
DataColumn — это тип столбца по умолчанию для виджета yii\grid\GridView.
Он используется для отображения данных столбцов и позволяет выполнять сортировку и фильтрацию данных.
Простое определение столбца данных относится к атрибуту в модели данных поставщика данных GridView. Название атрибута указывается с помощью $attribute.
Указав $value и $label, можно настроить заголовок и содержимое ячеек.
Столбец данных различает значение ячейки данных и содержимое ячейки данных. Значение ячейки — это неформатированное значение, которое может использоваться для вычислений, а фактическое содержимое ячейки — это форматированная версия этого значения, которая может содержать HTML-разметку.
Дополнительные сведения и информацию об использовании DataColumn см. в статье руководства о виджетах данных.
Публичные свойства
| Свойство | Тип | Описание | Определено |
|---|---|---|---|
| $attribute | string | Имя атрибута, связанного со столбцом. | yii\grid\DataColumn |
| $content | callable | Это вызываемый объект, который будет использоваться для генерации содержимого каждой ячейки. | yii\grid\Column |
| $contentOptions | array|Closure | Атрибуты HTML для тега ячейки данных. | yii\grid\Column |
| $enableSorting | boolean | Разрешить сортировку по этому столбцу. | yii\grid\DataColumn |
| $encodeLabel | boolean | Заголовок должен быть закодирован в HTML. | yii\grid\DataColumn |
| $filter | string|array|null|false | HTML-код, представляющий поле фильтра (например, текстовое поле, раскрывающийся список), используемый для этого столбца данных. | yii\grid\DataColumn |
| $filterInputOptions | array | Атрибуты HTML для полей ввода фильтра. | yii\grid\DataColumn |
| $filterOptions | array | Атрибуты HTML для тега ячейки фильтра. | yii\grid\Column |
| $footer | string | Содержимое ячейки подвала. | yii\grid\Column |
| $footerOptions | array | Атрибуты HTML для тега ячейки подвала. | yii\grid\Column |
| $format | string|array | В каком формате должно отображаться значение каждой модели данных (например, "raw", "text", "html", ['date', 'php:Y-m-d']). | yii\grid\DataColumn |
| $grid | yii\grid\GridView | Объект виджета GridView, который владеет этим столбцом. | yii\grid\Column |
| $header | string | Содержимое ячейки заголовка. | yii\grid\Column |
| $headerOptions | array | Атрибуты HTML для тега ячейки заголовка. | yii\grid\Column |
| $label | string | Метка, отображаемая в ячейке заголовка, а также используемая в качестве метки ссылки сортировки при включенной сортировке для этого столбца. | yii\grid\DataColumn |
| $options | array | Атрибуты HTML для тега группы столбцов. | yii\grid\Column |
| $sortLinkOptions | array | Атрибуты HTML для тега ссылки в ячейке заголовка, сгенерированной методом yii\data\Sort::link(), когда сортировка включена для данного столбца. | yii\grid\DataColumn |
| $value | string|Closure | Анонимная функция или строка, используемая для определения значения, отображаемого в текущем столбце. | yii\grid\DataColumn |
| $visible | boolean | Столбец видимый или нет. | yii\grid\Column |
Публичные методы
| Метод | Описание | Определено в |
|---|---|---|
| __call() | Вызов именованного метода, который не является методом класса. | yii\base\Object |
| __construct() | Конструктор. | yii\base\Object |
| __get() | Возвращает значение свойства объекта. | yii\base\Object |
| __isset() | Проверка, установлено ли свойство, т.е. определено и не равно null. | yii\base\Object |
| __set() | Устанавливает значение свойства объекта. | yii\base\Object |
| __unset() | Устанавливает свойство объекта в null. | yii\base\Object |
| canGetProperty() | Возвращает значение, указывающее, можно ли прочитать свойство. | yii\base\Object |
| canSetProperty() | Возвращает значение, указывающее, можно ли установить свойство. | yii\base\Object |
| className() | Возвращает полное имя класса. | yii\base\Object |
| getDataCellValue() | Возвращает значение ячейки данных. | yii\grid\DataColumn |
| hasMethod() | Возвращает значение, указывающее, определен ли метод. | yii\base\Object |
| hasProperty() | Возвращает значение, указывающее, определено ли свойство. | yii\base\Object |
| init() | Инициализирует объект. | yii\base\Object |
| renderDataCell() | Отображает ячейку данных. | yii\grid\Column |
| renderFilterCell() | Отображает ячейку фильтра. | yii\grid\Column |
| renderFooterCell() | Отображает ячейку подвала. | yii\grid\Column |
| renderHeaderCell() | Отображает ячейку заголовка. | yii\grid\Column |
Защищенные методы
| Метод | Описание | Определено в |
|---|---|---|
| getHeaderCellLabel() | Возвращает метку ячейки заголовка. | yii\grid\DataColumn |
| renderDataCellContent() | Отображает содержимое ячейки данных. | yii\grid\DataColumn |
| renderFilterCellContent() | Отображает содержимое ячейки фильтра. | yii\grid\DataColumn |
| renderFooterCellContent() | Отображает содержимое ячейки подвала. | yii\grid\Column |
| renderHeaderCellContent() | Отображает содержимое ячейки заголовка. | yii\grid\DataColumn |
Подробное описание свойств
$attribute общедоступное свойство
Имя атрибута, связанное с этим столбцом. Когда ни $content, ни $value не указаны, значение указанного атрибута извлекается из каждой модели данных и отображается.
Также, если $label не указан, отображается метка, связанная с атрибутом.
public string $attribute = null
$enableSorting общедоступное свойство
Разрешить сортировку по этому столбцу. Если true и $attribute найден в определении сортировки yii\grid\GridView::$dataProvider, то ячейка заголовка этого столбца будет содержать ссылку, которая может активировать сортировку при нажатии.
public boolean $enableSorting = true
$encodeLabel общедоступное свойство (доступно с версии 2.0.1)
Необходимо ли кодировать метку заголовка в HTML.
См. также $label.
public boolean $encodeLabel = true
$filter общедоступное свойство
HTML-код, представляющий элемент ввода фильтра (например, текстовое поле, выпадающий список), используемый для этого столбца данных. Это свойство эффективно только при установке yii\grid\GridView::$filterModel.
- Если это свойство не установлено, будет сгенерировано текстовое поле как элемент ввода фильтра;
- Если это свойство является массивом, будет сгенерирован выпадающий список, который использует значения этого свойства в качестве вариантов списка.
- Если для этого столбца данных не нужен фильтр, установите это значение в false.
public string|array|null|false $filter = null
$filterInputOptions общедоступное свойство
Атрибуты HTML для полей ввода фильтра. Это свойство используется в сочетании со свойством $filter. Когда $filter не установлен или является массивом, это свойство будет использоваться для рендеринга атрибутов HTML для сгенерированных полей ввода фильтра.
См. также yii\helpers\Html::renderTagAttributes() для получения подробной информации о том, как рендерятся атрибуты.
public array $filterInputOptions = ['class' => 'form-control', 'id' => null]
$format общедоступное свойство
В каком формате должно отображаться значение каждой модели данных (например, "raw", "text", "html", ['date', 'php:Y-m-d']). Поддерживаемые форматы определяются используемым форматер для yii\grid\GridView. По умолчанию формат «text», который отформатирует значение как HTML-кодированный простой текст, когда yii\i18n\Formatter используется в качестве форматера GridView.
public string|array $format = 'text'
$label общедоступное свойство
Метка, отображаемая в ячейке заголовка, а также используемая в качестве метки ссылки сортировки, когда сортировка включена для этого столбца. Если она не установлена и модели, предоставляемые провайдером данных GridView, являются экземплярами yii\db\ActiveRecord, метка будет определяться с помощью yii\db\ActiveRecord::getAttributeLabel(). В противном случае для получения метки будет использоваться yii\helpers\Inflector::camel2words().
public string $label = null
$sortLinkOptions общедоступное свойство
Атрибуты HTML для тега ссылки в ячейке заголовка, сгенерированной yii\data\Sort::link(), когда сортировка включена для этого столбца.
См. также yii\helpers\Html::renderTagAttributes() для получения подробной информации о том, как рендерятся атрибуты.
public array $sortLinkOptions = []
$value общедоступное свойство
Анонимная функция или строка, используемая для определения значения, которое следует отобразить в текущем столбце.
Если это анонимная функция, она будет вызываться для каждой строки, и возвращаемое значение будет использоваться в качестве значения для отображения для каждой модели данных. Подпись этой функции должна быть: function ($model, $key, $index, $column). Где $model, $key, и $index относятся к модели, ключу и индексу текущей отображаемой строки, а $column — ссылка на объект yii\grid\DataColumn.
Вы также можете установить это свойство в строку, представляющую имя атрибута, которое следует отобразить в этом столбце. Это может быть использовано, когда отображаемый атрибут отличается от $attribute, который используется для сортировки и фильтрации.
Если это не установлено, $model[$attribute] будет использоваться для получения значения, где $attribute — значение $attribute.
public string|Closure $value = null
Подробное описание методов
getDataCellValue() public метод
Возвращает значение ячейки данных.
| public string getDataCellValue ( $model, $key, $index ) | ||
|---|---|---|
| $model | mixed |
Модель данных |
| $key | mixed |
Ключ, связанный с моделью данных |
| $index | integer |
Индекс (с нуля) модели данных в массиве моделей, возвращаемом yii\grid\GridView::$dataProvider. |
| return | string |
Значение ячейки данных |
getHeaderCellLabel() защищённый метод (доступен с версии 2.0.8)
Возвращает метку ячейки заголовка.
Этот метод можно переопределить для настройки метки ячейки заголовка.
| protected string getHeaderCellLabel ( ) | ||
|---|---|---|
| return | string |
Метка |
renderDataCellContent() защищённый метод
Отображает содержимое ячейки данных.
| protected string renderDataCellContent ( $model, $key, $index ) | ||
|---|---|---|
| $model | mixed |
Модель данных |
| $key | mixed |
Ключ, связанный с моделью данных |
| $index | integer |
Индекс (с нуля) модели данных в массиве моделей, возвращаемом yii\grid\GridView::$dataProvider. |
| return | string |
Результат рендеринга |
renderFilterCellContent() защищённый метод
Отображает содержимое ячейки фильтра.
По умолчанию отображается пробел. Этот метод можно переопределить для настройки отображения ячейки фильтра (если она есть).
| protected string renderFilterCellContent ( ) | ||
|---|---|---|
| return | string |
Результат рендеринга |
renderHeaderCellContent() защищённый метод
Отображает содержимое ячейки заголовка.
По умолчанию отображается $header. Этот метод можно переопределить для настройки отображения ячейки заголовка.
| protected string renderHeaderCellContent ( ) | ||
|---|---|---|
| return | string |
Результат рендеринга |
© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc-2.0/yii-grid-datacolumn.html