Spec-Zone.ru › Symfony 4.1

TemplatingRendererEngine

class TemplatingRendererEngine extends AbstractRendererEngine

Постоянные значения

CACHE_KEY_VAR

Переменная в {@link FormView}, используемая в качестве ключа кэша.

Свойства

protected $defaultThemes из AbstractRendererEngine
protected $themes из AbstractRendererEngine
protected $useDefaultThemes из AbstractRendererEngine
protected $resources из AbstractRendererEngine

Методы

__construct(EngineInterface $engine, array $defaultThemes = array())

Создаёт новый движок рендеринга.

setTheme(FormView $view, mixed $themes, bool $useDefaultThemes = true)

Устанавливает тему(ы) для рендеринга представления и его дочерних элементов.

из AbstractRendererEngine
mixed getResourceForBlockName(FormView $view, string $blockName)

Возвращает ресурс для имени блока.

из AbstractRendererEngine
mixed getResourceForBlockNameHierarchy(FormView $view, array $blockNameHierarchy, int $hierarchyLevel)

Возвращает ресурс для иерархии имен блоков.

из AbstractRendererEngine
int|bool getResourceHierarchyLevel(FormView $view, array $blockNameHierarchy, int $hierarchyLevel)

Возвращает уровень иерархии, на котором можно найти ресурс.

из AbstractRendererEngine
bool loadResourceForBlockName(string $cacheKey, FormView $view, string $blockName)

Загружает кэш с ресурсом для данного имени блока.

string renderBlock(FormView $view, mixed $resource, string $blockName, array $variables = array())

Рендерит блок в заданном ресурсе рендеринга.

bool loadResourceFromTheme(string $cacheKey, string $blockName, mixed $theme)

Пытается загрузить ресурс для блока из темы.

Подробности

__construct(EngineInterface $engine, array $defaultThemes = array())

Создаёт новый движок рендеринга.

Параметры

EngineInterface $engine
array $defaultThemes Значения по умолчанию для тем. Тип этих тем открыт для реализации.

setTheme(FormView $view, mixed $themes, bool $useDefaultThemes = true)

Устанавливает темы для рендеринга представления и его дочерних элементов.

Параметры

FormView $view Представление, которому будут назначены темы
mixed $themes Темы. Тип этих тем открыт для реализации.
bool $useDefaultThemes Если true, будут использоваться темы по умолчанию, указанные в движке

mixed getResourceForBlockName(FormView $view, string $blockName)

Возвращает ресурс для имени блока.

Ресурс сначала ищется в темах, прикреплённых к $view, затем в темах его родительского представления и так далее, пока не будет найден ресурс.

Тип ресурса определяется реализацией. Ресурс позже передаётся алгоритмом рендеринга в {@link renderBlock()}.

Параметры

FormView $view Представление для определения используемых тем. Сначала рассматриваются темы, прикреплённые непосредственно к представлению с помощью {@link setTheme()}, затем темы его родителя и т.д.
string $blockName Имя блока для рендеринга

Возвращаемое значение

mixed Ресурс рендеринга или false, если не был найден

mixed getResourceForBlockNameHierarchy(FormView $view, array $blockNameHierarchy, int $hierarchyLevel)

Возвращает ресурс для иерархии блоков.

Иерархия блоков — это массив, который начинается с корня иерархии и продолжается с потомка этого корня, потомка этого потомка и т.д. Пример иерархии блоков:

form_widget
text_widget
url_widget

В этом примере «url_widget» — самый конкретный блок, а другие блоки являются его предками в иерархии.

Второй параметр $hierarchyLevel определяет уровень иерархии, который должен быть рендерен. Например, если $hierarchyLevel равен 2 для вышеприведённой иерархии, движок сначала будет искать блок «url_widget», затем, если он не существует, блок «text_widget» и т.д.

Тип ресурса определяется реализацией. Ресурс позже передаётся алгоритмом рендеринга в {@link renderBlock()}.

Параметры

FormView $view Представление для определения используемых тем. Сначала рассматриваются темы, прикреплённые непосредственно к представлению с помощью {@link setTheme()}, затем темы его родителя и т.д.
array $blockNameHierarchy Иерархия имён блоков, с корневым блоком в начале
int $hierarchyLevel Уровень в иерархии, с которого следует начать поиск. Уровень 0 обозначает корневой блок, т. е. первый элемент $blockNameHierarchy.

Возвращаемое значение

mixed Ресурс рендеринга или false, если не был найден

int|bool getResourceHierarchyLevel(FormView $view, array $blockNameHierarchy, int $hierarchyLevel)

Возвращает уровень иерархии, на котором может быть найден ресурс.

Иерархия блоков — это массив, который начинается с корня иерархии и продолжается с потомка этого корня, потомка этого потомка и т.д. Пример иерархии блоков:

form_widget
text_widget
url_widget

Второй параметр $hierarchyLevel определяет уровень иерархии, который должен быть рендерингом.

Если мы вызовем этот метод с уровнем иерархии 2, движок сначала будет искать ресурс для блока «url_widget». Если такой ресурс существует, метод возвращает 2. В противном случае он пытается найти ресурс для блока «text_widget» (на уровне 1) и снова возвращает 1, если ресурс был найден. Метод продолжает искать ресурсы до тех пор, пока не будет достигнут корневой уровень, и ничего не будет найдено. В этом случае возвращается false.

Тип ресурса определяется реализацией. Ресурс позже передаётся алгоритмом рендеринга в {@link renderBlock()}.

Параметры

FormView $view Представление для определения используемых тем. Сначала рассматриваются темы, прикреплённые непосредственно к представлению с помощью {@link setTheme()}, затем темы его родителя и т.д.
array $blockNameHierarchy Иерархия имён блоков, с корневым блоком в начале
int $hierarchyLevel Уровень в иерархии, с которого следует начать поиск. Уровень 0 обозначает корневой блок, т. е. первый элемент $blockNameHierarchy.

Возвращаемое значение

int|bool Уровень иерархии или false, если ресурс не был найден

protected bool loadResourceForBlockName(string $cacheKey, FormView $view, string $blockName)

Загружает кеш с ресурсом для данного имени блока.

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

Параметры

string $cacheKey Ключ кеша представления формы
FormView $view Представление формы для поиска применяемых тем
string $blockName Имя блока для загрузки

Возвращаемое значение

bool True, если ресурс был загружен, иначе false

См. также

getResourceForBlock()

string renderBlock(FormView $view, mixed $resource, string $blockName, array $variables = array())

Рендерит блок в заданном ресурсе рендеринга.

Ресурс можно получить, вызвав {@link getResourceForBlock()} или {@link getResourceForBlockHierarchy()}. Тип ресурса определяется реализацией.

Параметры

FormView $view Представление для рендеринга
mixed $resource Ресурс рендеринга
string $blockName Имя блока для рендеринга
array $variables Переменные для передачи в шаблон

Возвращаемое значение

string HTML-разметка

protected bool loadResourceFromTheme(string $cacheKey, string $blockName, mixed $theme)

Пытается загрузить ресурс блока из темы.

Параметры

string $cacheKey Ключ кеша для хранения ресурса
string $blockName Имя блока, для которого требуется загрузить ресурс
mixed $theme Тема для загрузки блока

Возвращаемое значение

bool True, если ресурс был загружен, иначе false

© 2004–2017 Fabien Potencier
Licensed under the MIT License.
https://api.symfony.com/4.1/Symfony/Component/Form/Extension/Templating/TemplatingRendererEngine.html

Spec-Zone.ru

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