Spec-Zone.ru › Yii 2.0

Класс yii\grid\ActionColumn

Все классы | Свойства | Методы
Наследование yii\grid\ActionColumn » yii\grid\Column » yii\base\Object
Реализует yii\base\Configurable
Доступно с версии 2.0
Исходный код https://github.com/yiisoft/yii2/blob/master/framework/grid/ActionColumn.php

ActionColumn — это столбец для виджета yii\grid\GridView, который отображает кнопки для просмотра и управления элементами.

Чтобы добавить ActionColumn в gridview, добавьте его в конфигурацию columns следующим образом:

'columns' => [
    // ...
    [
        'class' => ActionColumn::className(),
        // you may configure additional properties here
    ],
]

Дополнительную информацию и сведения об использовании ActionColumn см. в статье руководства по виджетам данных.

Публичные свойства

Свойство Тип Описание Определено в
$buttonOptions array Параметры HTML, которые будут применены к стандартной кнопке. yii\grid\ActionColumn
$buttons array Обратные вызовы рендеринга кнопок. yii\grid\ActionColumn
$content callable Это вызываемый объект, который будет использоваться для генерации содержимого каждой ячейки. yii\grid\Column
$contentOptions array|Closure Атрибуты HTML для тега ячейки данных. yii\grid\Column
$controller string Идентификатор контроллера, который должен обрабатывать указанные здесь действия. yii\grid\ActionColumn
$filterOptions array Атрибуты HTML для тега ячейки фильтра. yii\grid\Column
$footer string Содержимое ячейки подвала. yii\grid\Column
$footerOptions array Атрибуты HTML для тега ячейки подвала. yii\grid\Column
$grid yii\grid\GridView Объект представления таблицы, которому принадлежит этот столбец. yii\grid\Column
$header string Содержимое ячейки заголовка. yii\grid\Column
$headerOptions array Атрибуты HTML для тега ячейки заголовка. yii\grid\ActionColumn
$options array Атрибуты HTML для тега группы столбцов. yii\grid\Column
$template string Шаблон, используемый для составления каждой ячейки в столбце действий. yii\grid\ActionColumn
$urlCreator callable Обратный вызов, создающий URL кнопки с указанной информацией модели. yii\grid\ActionColumn
$visible boolean Определяет, отображается ли этот столбец. yii\grid\Column
$visibleButtons array Условия видимости каждой кнопки. yii\grid\ActionColumn

Публичные методы

Метод Описание Определено в
__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
createUrl() Создаёт URL для данного действия и модели. yii\grid\ActionColumn
hasMethod() Возвращает значение, указывающее, определён ли метод. yii\base\Object
hasProperty() Возвращает значение, указывающее, определено ли свойство. yii\base\Object
init() Инициализирует объект. yii\grid\ActionColumn
renderDataCell() Отображает ячейку данных. yii\grid\Column
renderFilterCell() Отображает ячейку фильтра. yii\grid\Column
renderFooterCell() Отображает ячейку подвала. yii\grid\Column
renderHeaderCell() Отображает ячейку заголовка. yii\grid\Column

Защищенные методы

Метод Описание Определено в
getHeaderCellLabel() Возвращает метку ячейки заголовка. yii\grid\Column
initDefaultButton() Инициализирует обратный вызов рендеринга стандартной кнопки для одиночной кнопки yii\grid\ActionColumn
initDefaultButtons() Инициализирует обратные вызовы рендеринга стандартных кнопок. yii\grid\ActionColumn
renderDataCellContent() Отображает содержимое ячейки данных. yii\grid\ActionColumn
renderFilterCellContent() Отображает содержимое ячейки фильтра. yii\grid\Column
renderFooterCellContent() Отображает содержимое ячейки подвала. yii\grid\Column
renderHeaderCellContent() Отображает содержимое ячейки заголовка. yii\grid\Column

Подробное описание свойств

$buttonOptions общее свойство (доступно с версии 2.0.4)

Параметры HTML, применяемые к кнопке по умолчанию.

public array $buttonOptions = []

$buttons общее свойство

Обратные вызовы для отображения кнопок. Ключи массива — имена кнопок (без фигурных скобок), а значения — соответствующие обратные вызовы для отображения кнопок. Обратные вызовы должны иметь следующий вид:

function ($url, $model, $key) {
    // return the button HTML code
}

где $url — URL, созданный столбцом для кнопки, $model — объект модели, отображаемый для текущей строки, и $key — ключ модели в массиве поставщика данных.

Вы можете добавить дополнительные условия для кнопки, например, отображать её только при редактировании модели (предполагается, что у вас есть поле статуса, которое это указывает):

[
    'update' => function ($url, $model, $key) {
        return $model->status === 'editable' ? Html::a('Update', $url) : '';
    },
],
public array $buttons = []

$controller общее свойство

ID контроллера, который должен обрабатывать указанные здесь действия. Если не указано, будет использован текущий активный контроллер. Это свойство в основном используется $urlCreator для создания URL-адресов для различных действий. Значение этого свойства будет добавлено как префикс к каждому имени действия для формирования маршрута действия.

public string $controller = null

$headerOptions общее свойство

Атрибуты HTML для тега ячейки заголовка.

public array $headerOptions = ['class' => 'action-column']

$template общее свойство

Шаблон, используемый для составления каждой ячейки в столбце действий. Токены, заключенные в фигурные скобки, интерпретируются как идентификаторы действий контроллера (также называемые *именами кнопок* в контексте столбца действий). Они будут заменены соответствующими обратными вызовами для отображения кнопок, указанными в $buttons. Например, токен {view} будет заменён результатом обратного вызова buttons['view']. Если обратный вызов не найден, токен будет заменён пустой строкой.

Например, чтобы отобразить только кнопки «Просмотр» и «Редактировать», вы можете добавить ActionColumn в столбцы GridView следующим образом:

['class' => 'yii\grid\ActionColumn', 'template' => '{view} {update}'],

См. также $buttons.

public string $template = '{view} {update} {delete}'

$urlCreator общее свойство

Обратный вызов, создающий URL-адрес кнопки с использованием указанной информации о модели. Подпись обратного вызова должна быть такой же, как у createUrl() С версии 2.0.10 он может принимать дополнительный параметр, который относится к самому экземпляру столбца:

function (string $action, mixed $model, mixed $key, integer $index, ActionColumn $this) {
    //return string;
}

Если это свойство не установлено, URL-адреса кнопок будут созданы с помощью createUrl().

public callable $urlCreator = null

$visibleButtons общее свойство (доступно с версии 2.0.7)

Условия видимости каждой кнопки. Ключи массива — имена кнопок (без фигурных скобок), а значения — булево значение true/false или анонимная функция. Если имя кнопки не указано в этом массиве, она будет отображаться по умолчанию. Обратные вызовы должны иметь следующий вид:

function ($model, $key, $index) {
    return $model->status === 'editable';
}

Или вы можете передать булево значение:

[
    'update' => \Yii::$app->user->can('update'),
],
public array $visibleButtons = []

Подробное описание методов

createUrl() общественный метод

Создаёт URL для данного действия и модели.

Этот метод вызывается для каждой кнопки и каждой строки.

public строка createUrl ( $action, $model, $key, $index )
$action строка

Имя кнопки (или идентификатор действия)

$model yii\db\ActiveRecordInterface

Модель данных

$key смешанный тип

Ключ, связанный с моделью данных

$index целое число

Текущий индекс строки

return строка

Созданный URL

init() общественный метод

Инициализирует объект.

Этот метод вызывается в конце конструктора после инициализации объекта заданной конфигурацией.

public void init ( )

initDefaultButton() защищённый метод (доступен с версии 2.0.11)

Инициализирует обратный вызов для отображения кнопки по умолчанию для одиночной кнопки

protected void initDefaultButton ( $name, $iconName, $additionalOptions = [] )
$name строка

Имя кнопки, как оно написано в шаблоне

$iconName строка

Часть класса Bootstrap glyphicon, которая делает его уникальным

$additionalOptions массив

Массив дополнительных опций

initDefaultButtons() защищённый метод

Инициализирует обратные вызовы для отображения кнопок по умолчанию.

protected void initDefaultButtons ( )

renderDataCellContent() защищённый метод

Отображает содержимое ячейки данных.

protected строка renderDataCellContent ( $model, $key, $index )
$model смешанный тип

Модель данных

$key смешанный тип

Ключ, связанный с моделью данных

$index целое число

Индекс модели данных (с нуля) среди массива моделей, возвращённого yii\grid\GridView::$dataProvider.

return строка

Результат рендеринга

© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc-2.0/yii-grid-actioncolumn.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API