Spec-Zone.ru › Yii 1.1

CContentDecorator

Пакет system.web.widgets
Наследование class CContentDecorator » COutputProcessor » CFilterWidget » CWidget » CBaseController » CComponent
Реализует IFilter
С 1.0
Исходный код framework/web/widgets/CContentDecorator.php
CContentDecorator декорирует содержащийся контент указанным представлением.

CContentDecorator в основном используется для реализации вложенных макетов, т. е. макет встраивается в другой макет. CBaseController определяет пару удобных методов для использования CContentDecorator:
$this->beginContent('path/to/view');
// ... content to be decorated
$this->endContent();


Свойство view указывает имя представления, которое используется для декорирования контента. В представлении доступ к декорируемому контенту можно получить с помощью переменной $content.

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

Свойство Тип Описание Определено в
actionPrefix string префикс к идентификаторам действий. CWidget
controller CController Возвращает контроллер, к которому принадлежит данный виджет. CWidget
data array переменные (имя=>значение), которые будут извлечены и доступны в декорируемом представлении. CContentDecorator
id string Возвращает ID виджета или генерирует новый, если запрошено. CWidget
isFilter boolean указывает, используется ли этот виджет в качестве фильтра. CFilterWidget
owner CBaseController Возвращает владельца/создателя этого виджета. CWidget
skin mixed имя используемой темы. CWidget
stopAction boolean указывает, останавливать ли выполнение действия, когда этот виджет используется в качестве фильтра. CFilterWidget
view mixed имя представления, которое будет использоваться для декорирования полученного контента. CContentDecorator
viewPath string Возвращает директорию с файлами представления для этого виджета. CWidget

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

Метод Описание Определено в
__call() Вызывает именованный метод, который не является методом класса. CComponent
__construct() Конструктор. CFilterWidget
__get() Возвращает значение свойства, список обработчиков событий или поведение по его имени. CComponent
__isset() Проверяет, является ли значение свойства нулевым. CComponent
__set() Устанавливает значение свойства компонента. CComponent
__unset() Устанавливает свойство компонента в значение null. CComponent
actions() Возвращает список действий, используемых этим виджетом. CWidget
asa() Возвращает объект поведения с заданным именем. CComponent
attachBehavior() Присоединяет поведение к этому компоненту. CComponent
attachBehaviors() Присоединяет список поведений к компоненту. CComponent
attachEventHandler() Присоединяет обработчик событий к событию. CComponent
beginCache() Начинает кэширование фрагмента. CBaseController
beginClip() Начинает запись клипа. CBaseController
beginContent() Начинает отображение содержимого, которое должно быть оформлено указанным представлением. CBaseController
beginWidget() Создаёт виджет и выполняет его. CBaseController
canGetProperty() Определяет, можно ли прочитать свойство. CComponent
canSetProperty() Определяет, можно ли установить свойство. CComponent
createWidget() Создаёт виджет и инициализирует его. CBaseController
detachBehavior() Отсоединяет поведение от компонента. CComponent
detachBehaviors() Отсоединяет все поведения от компонента. CComponent
detachEventHandler() Отсоединяет существующего обработчика событий. CComponent
disableBehavior() Отключает присоединённое поведение. CComponent
disableBehaviors() Отключает все присоединённые поведения этого компонента. CComponent
enableBehavior() Включает присоединённое поведение. CComponent
enableBehaviors() Включает все присоединённые к этому компоненту поведения. CComponent
endCache() Завершает кэширование фрагмента. CBaseController
endClip() Завершает запись клипа. CBaseController
endContent() Завершает отображение содержимого. CBaseController
endWidget() Завершает выполнение указанного виджета. CBaseController
evaluateExpression() Вычисляет выражение PHP или обратный вызов в контексте этого компонента. CComponent
filter() Выполняет фильтрацию. CFilterWidget
getController() Возвращает контроллер, к которому принадлежит этот виджет. CWidget
getEventHandlers() Возвращает список присоединённых обработчиков событий для события. CComponent
getId() Возвращает идентификатор виджета или генерирует новый, если запрошено. CWidget
getIsFilter() Проверяет, используется ли этот виджет в качестве фильтра. CFilterWidget
getOwner() Возвращает владельца/создателя этого виджета. CWidget
getViewFile() Ищет файл скрипта представления по имени представления. CWidget
getViewPath() Возвращает директорию, содержащую файлы представлений для этого виджета. CWidget
hasEvent() Определяет, определено ли событие. CComponent
hasEventHandler() Проверяет, есть ли присоединённые обработчики к событию с заданным именем. CComponent
hasProperty() Определяет, определено ли свойство. CComponent
init() Инициализирует виджет. COutputProcessor
onProcessOutput() Вызывается, когда вывод был получен. COutputProcessor
processOutput() Обрабатывает полученный вывод. CContentDecorator
raiseEvent() Возбуждает событие. CComponent
render() Отображает представление. CWidget
renderFile() Отображает файл представления. CBaseController
renderInternal() Отображает файл представления. CBaseController
run() Выполняет виджет. COutputProcessor
setId() Устанавливает идентификатор виджета. CWidget
widget() Создаёт виджет и выполняет его. CBaseController

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

Метод Описание Определено в
decorate() Декорирует содержимое, отображая представление и встраивая содержимое в него. CContentDecorator

События

Событие Описание Определено в
onProcessOutput Вызывается, когда вывод был получен. COutputProcessor

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

данные свойство

public array $data;

переменные (имя=>значение), которые должны быть извлечены и доступны в представлении-оболочке.

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

public mixed $view;

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

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

decorate() метод

protected string decorate(string $content)
$content строка содержимое, которое нужно оформить
{return} строка оформленное содержимое
Исходный код: framework/web/widgets/CContentDecorator.php#65 (показать)
protected function decorate($content)
{
    
$owner=$this->getOwner();
    if(
$this->view===null)
        
$viewFile=Yii::app()->getController()->getLayoutFile(null);
    else
        
$viewFile=$owner->getViewFile($this->view);
    if(
$viewFile!==false)
    {
        
$data=$this->data;
        
$data['content']=$content;
        return 
$owner->renderFile($viewFile,$data,true);
    }
    else
        return 
$content;
}

Оформляет содержимое, рендерингом представления и встраиванием содержимого в него. Доступ к встраиваемому содержимому в представлении осуществляется с помощью переменной $content Оформленное содержимое будет отображено непосредственно.

processOutput() метод

public void processOutput(string $output)
$output строка захваченный вывод, который нужно обработать
Исходный код: framework/web/widgets/CContentDecorator.php#52 (показать)
public function processOutput($output)
{
    
$output=$this->decorate($output);
    
parent::processOutput($output);
}

Обрабатывает захваченный вывод. Этот метод оформляет вывод с помощью указанного представления.

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

Spec-Zone.ru

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