Spec-Zone.ru › Yii 1.1

CDataColumn

Пакет zii.widgets.grid
Наследование class CDataColumn » CGridColumn » CComponent
С момента 1.1
Исходный код framework/zii/widgets/grid/CDataColumn.php
CDataColumn представляет собой столбец представления сетки, который связан с атрибутом данных или выражением PHP.

Должен быть указан либо имя, либо значение. Первый указывает имя атрибута данных, а второй — выражение PHP, значение которого должно быть отображено вместо него.

Свойство sortable определяет, можно ли сортировать представление сетки по этому столбцу. Обратите внимание, что имя всегда должно быть задано, если столбец должен быть сортируемым. Значение имени будет использовано CSort для отображения кликабельной ссылки в ячейке заголовка для запуска сортировки.

Общественные свойства

Свойство Тип Описание Определено
cssClassExpression строка выражение PHP, которое вычисляется для каждой ячейки данных, и результат которого используется в качестве имени класса CSS для ячейки данных. CGridColumn
filter смешанное код HTML, представляющий поле фильтра (например, текстовое поле, раскрывающийся список), используемое для этого столбца данных. CDataColumn
filterCellContent строка Возвращает содержимое ячейки фильтра. CDataColumn
filterHtmlOptions массив параметры HTML для тега ячейки фильтра. CGridColumn
footer строка текст ячейки подвала. CGridColumn
footerCellContent строка Возвращает содержимое ячейки подвала. CGridColumn
footerHtmlOptions массив параметры HTML для тега ячейки подвала. CGridColumn
grid CGridView объект представления сетки, который владеет этим столбцом. CGridColumn
hasFooter булево имеет ли этот столбец ячейку подвала. CGridColumn
header строка текст ячейки заголовка. CGridColumn
headerCellContent строка Возвращает содержимое ячейки заголовка. CDataColumn
headerHtmlOptions массив параметры HTML для тега ячейки заголовка. CGridColumn
htmlOptions массив параметры HTML для тегов ячейки данных. CGridColumn
id строка Идентификатор этого столбца. CGridColumn
name строка имя атрибута модели данных. CDataColumn
sortable булево можно ли сортировать столбец. CDataColumn
type строка тип значения атрибута. CDataColumn
value строка выражение PHP, которое будет вычисляться для каждой ячейки данных с помощью evaluateExpression, и результат которого будет отображаться как содержимое ячейки данных. CDataColumn
visible булево отображается ли этот столбец. CGridColumn

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

Метод Описание Определено в
__call() Вызывает именованный метод, который не является методом класса. CComponent
__construct() Конструктор. CGridColumn
__get() Возвращает значение свойства, список обработчиков событий или поведение по его имени. CComponent
__isset() Проверяет, является ли значение свойства null. CComponent
__set() Устанавливает значение свойства компонента. CComponent
__unset() Устанавливает свойство компонента в null. CComponent
asa() Возвращает объект именованного поведения. CComponent
attachBehavior() Присоединяет поведение к этому компоненту. CComponent
attachBehaviors() Присоединяет список поведений к компоненту. CComponent
attachEventHandler() Присоединяет обработчик событий к событию. CComponent
canGetProperty() Определяет, можно ли прочитать свойство. CComponent
canSetProperty() Определяет, можно ли установить свойство. CComponent
detachBehavior() Отсоединяет поведение от компонента. CComponent
detachBehaviors() Отсоединяет все поведения от компонента. CComponent
detachEventHandler() Отсоединяет существующий обработчик событий. CComponent
disableBehavior() Отключает присоединенное поведение. CComponent
disableBehaviors() Отключает все присоединенные к этому компоненту поведения. CComponent
enableBehavior() Включает присоединенное поведение. CComponent
enableBehaviors() Включает все присоединенные к этому компоненту поведения. CComponent
evaluateExpression() Вычисляет PHP-выражение или обратный вызов в контексте этого компонента. CComponent
getDataCellContent() Возвращает содержимое ячейки данных. CDataColumn
getEventHandlers() Возвращает список присоединенных обработчиков событий для события. CComponent
getFilterCellContent() Возвращает содержимое ячейки фильтра. CDataColumn
getFooterCellContent() Возвращает содержимое ячейки подвала. CGridColumn
getHasFooter() Возвращает, имеет ли этот столбец ячейку подвала. Это определяется на основе того, установлено ли footer. CGridColumn
getHeaderCellContent() Возвращает содержимое ячейки заголовка. CDataColumn
hasEvent() Определяет, определено ли событие. CComponent
hasEventHandler() Проверяет, имеет ли именованное событие присоединенные обработчики. CComponent
hasProperty() Определяет, определено ли свойство. CComponent
init() Инициализирует столбец. CDataColumn
raiseEvent() Вызывает событие. CComponent
renderDataCell() Отображает ячейку данных. CGridColumn
renderFilterCell() Отображает ячейку фильтра. CGridColumn
renderFooterCell() Отображает ячейку подвала. CGridColumn
renderHeaderCell() Отображает ячейку заголовка. CGridColumn

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

Метод Описание Определено в
renderDataCellContent() Отображает содержимое ячейки данных. CGridColumn
renderFilterCellContent() Отображает содержимое ячейки фильтра. CGridColumn
renderFooterCellContent() Отображает содержимое ячейки подвала. CGridColumn
renderHeaderCellContent() Отображает содержимое ячейки заголовка. CGridColumn

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

filter свойство (доступно начиная с v1.1.1)

public mixed $filter;

HTML-код, представляющий поле ввода фильтра (например, текстовое поле, раскрывающийся список), используемый для этого столбца данных. Это свойство эффективно только при установке CGridView::filter. Если это свойство не задано, будет сгенерировано текстовое поле; Если это свойство является массивом, будет сгенерирован раскрывающийся список, который использует это значение свойства в качестве списка вариантов. Если вы не хотите фильтра для этого столбца данных, установите это значение в false.

filterCellContent свойство только для чтения (доступно начиная с v1.1.16)

public string getFilterCellContent()

Возвращает содержимое ячейки фильтра. Этот метод вернет filter как есть, если это строка. Если filter является массивом, предполагается, что это список опций, и будет отображен выпадающий список. В противном случае, если filter не равно false, отображается текстовое поле.

headerCellContent свойство только для чтения (доступно начиная с v1.1.16)

public string getHeaderCellContent()

Возвращает содержимое ячейки заголовка. Этот метод отобразит ссылку, которая может инициировать сортировку, если столбец сортируемый.

name свойство

public string $name;

Имя атрибута модели данных. Используется для сортировки столбцов, фильтрации и отображения соответствующего значения атрибута в каждой ячейке данных. Если value указано, оно будет использоваться для отображения ячейки данных вместо значения атрибута.

См. также

  • value
  • sortable

sortable свойство

public boolean $sortable;

Определяет, сортируется ли столбец. Если да, то ячейка заголовка будет содержать ссылку, которая может инициировать сортировку. По умолчанию true. Обратите внимание, что если name не задано или name не разрешено CSort, это свойство будет считаться false.

См. также

  • name

type свойство

public string $type;

тип значения атрибута. Это определяет, как значение атрибута форматируется для отображения. Допустимые значения включают те, которые распознаются CGridView::formatter, такие как: raw, text, ntext, html, date, time, datetime, boolean, number, email, image, url. Для получения более подробной информации см. CFormatter. По умолчанию используется 'text', что означает, что значение атрибута будет закодировано в HTML.

значение свойство

public string $value;

PHP-выражение, которое будет вычисляться для каждой ячейки данных с помощью evaluateExpression, и результат которого будет отображен как содержимое ячейки данных. В этом выражении вы можете использовать следующие переменные:

  • $row номер строки (нумерация с нуля).
  • $data модель данных для строки.
  • $this объект столбца.
PHP-выражение может быть любым PHP-кодом, имеющим значение. Чтобы узнать больше о том, что такое выражение, обратитесь к руководству PHP.

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

getDataCellContent() метод (доступен начиная с версии v1.1.16)

public string getDataCellContent(integer $row)
$row целое число номер строки (нумерация с нуля)
{return} строка содержимое ячейки данных.
Исходный код: framework/zii/widgets/grid/CDataColumn.php#138 (показать)
public function getDataCellContent($row)
{
    
$data=$this->grid->dataProvider->data[$row];
    if(
$this->value!==null)
        
$value=$this->evaluateExpression($this->value,array('data'=>$data,'row'=>$row));
    elseif(
$this->name!==null)
        
$value=CHtml::value($data,$this->name);
    return 
$value===null ? $this->grid->nullDisplay : $this->grid->getFormatter()->format($value,$this->type);
}

Возвращает содержимое ячейки данных. Этот метод вычисляет value или name и отображает результат.

getFilterCellContent() метод (доступен начиная с версии v1.1.16)

public string getFilterCellContent()
{return} строка содержимое ячейки фильтра
Исходный код: framework/zii/widgets/grid/CDataColumn.php#95 (показать)
public function getFilterCellContent()
{
    if(
is_string($this->filter))
        return 
$this->filter;
    elseif(
$this->filter!==false && $this->grid->filter!==null && $this->name!==null && strpos($this->name,'.')===false)
    {
        if(
is_array($this->filter))
            return 
CHtml::activeDropDownList($this->grid->filter, $this->name, $this->filter, array('id'=>false,'prompt'=>''));
        elseif(
$this->filter===null)
            return 
CHtml::activeTextField($this->grid->filter, $this->name, array('id'=>false));
    }
    else
        return 
parent::getFilterCellContent();
}

Возвращает содержимое ячейки фильтра. Этот метод вернёт значение filter как есть, если оно является строкой. Если filter является массивом, предполагается, что это список опций, и будет отображён выпадающий список. В противном случае, если filter не равно false, отобразится текстовое поле.

getHeaderCellContent() метод (доступен начиная с версии v1.1.16)

public string getHeaderCellContent()
{return} строка содержимое ячейки заголовка.
Исходный код: framework/zii/widgets/grid/CDataColumn.php#116 (показать)
public function getHeaderCellContent()
{
    if(
$this->grid->enableSorting && $this->sortable && $this->name!==null)
        return 
$this->grid->dataProvider->getSort()->link($this->name,$this->header,array('class'=>'sort-link'));
    elseif(
$this->name!==null && $this->header===null)
    {
        if(
$this->grid->dataProvider instanceof CActiveDataProvider)
            return 
CHtml::encode($this->grid->dataProvider->model->getAttributeLabel($this->name));
        else
            return 
CHtml::encode($this->name);
    }
    else
        return 
parent::getHeaderCellContent();
}

Возвращает содержимое ячейки заголовка. Этот метод отобразит ссылку, которая может инициировать сортировку, если столбец сортируемый.

init() метод

public void init()
Исходный код: framework/zii/widgets/grid/CDataColumn.php#78 (показать)
public function init()
{
    
parent::init();
    if(
$this->name===null)
        
$this->sortable=false;
    if(
$this->name===null && $this->value===null)
        throw new 
CException(Yii::t('zii','Either "name" or "value" must be specified for CDataColumn.'));
}

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

© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc/api/1.1/CDataColumn

Spec-Zone.ru

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