Commit 385f711f by Alexander Makarov

updated view renderers docs

parent d9498c43
......@@ -2,15 +2,18 @@ Yii2 view renderers
===================
By default Yii uses PHP as template language but you can change it in your application.
The component responsible for rendering a view using custom template enging is
called `viewRenderer`. You can configure it as follows:
The component responsible for rendering a view is called `view`. You can configure
a custom template engine as follows:
```php
array(
'components' => array(
'viewRenderer' => array(
'class' => 'yii\renderers\TwigViewRenderer',
// or 'class' => 'yii\renderers\SmartyViewRenderer',
'view' => array(
'class' => 'yii\base\View',
'renderer' => array(
'class' => 'yii\renderers\TwigViewRenderer',
// or 'class' => 'yii\renderers\SmartyViewRenderer',
),
),
),
)
......@@ -28,4 +31,30 @@ Smarty
In order to use Smarty you need to put you templates in files with extension `.tpl`.
Also you need to specify this extension explicitly when calling `$this->render()`
or `$this->renderPartial()` from your controller.
\ No newline at end of file
or `$this->renderPartial()` from your controller.
Using multiple view renderers in a single application
-----------------------------------------------------
If you need multiple view renderers at the same time in a single application you
can use `CompositeViewRenderer` as follows:
```php
'components' => array(
'view' => array(
'class' => 'yii\base\View',
'renderer' => array(
'class' => 'yii\renderers\CompositeViewRenderer',
'renderers' => array(
'tpl' => array(
'class' => 'yii\renderers\SmartyViewRenderer',
),
'twig' => array(
'class' => 'yii\renderers\TwigViewRenderer',
),
),
//'class' => 'yii\renderers\TwigViewRenderer',
),
),
),
```
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment