Использование базового шаблона, используя Templet | Вопрос скорее всего касается людей, использующих PF.
При рендеринге шаблона используя Templet не нашел возможности использовать базовый шаблон. В самом шаблоне я выполняю @USE для вызова базового шаблона, а сам необходимый контент оборачиваю в метод @content[]. В базовом шаблоне в @main[] происходит вызов этого метода. Это в идеале. В итоге же я получаю ошибку
_pattern is 'string', not a method or junction, can not call it
Хотелось бы знать, как при помощи движка Templet возможно реализовать такую структуру?
Заранее спасибо =) | Сейчас Темплет не поддерживает наследолвание... | Я в таких случаях использую shared-шаблоны, т.е. выношу общие блоки в отдельную папку и из шаблока вызываю метод include:
/shared/block.p:
<h1>$someTitle</h1>
template.p:
^include[/shared/block.p;$.vars[$.someTitle[Заголовок]]]
Если функционала метода include не хватает, то всегда можно расширить набор методов шаблона своими:
controller.p:
@renderMy[aName;aOptions]
$result[^render[/shared/$aName;$aOptions]]
@onSomeAction[aRequest]
^assignVar[renderMy;$renderMy]
^render[template.p]
template.p:
^renderMy[block.p;$.vars[...]]
|
|