iluhansk / yii2-renderer
Provides visualization functionality (rendering templates) to any component of yii2 application
Installs: 4
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
Type:yii2-extension
Requires
- yiisoft/yii2: *
This package is not auto-updated.
Last update: 2025-04-26 23:53:10 UTC
README
Provides visualization functionality (rendering views) to any component of yii2 application
- simple sintax
- view is searched by classes inheritance
Installation
The preferred way to install this extension is through composer.
Either run
php composer.phar require --prefer-dist iluhansk/yii2-renderer "*"
or add
"iluhansk/yii2-renderer": "*"
to the require section of your composer.json
file.
Usage
Add RenderBehavior to target class:
namespace common\components; use \yii\base\Component; use iluhansk\renderer\RenderBehavior; class Car extends Component { public function behaviors() { return [ 'renderer' => [ 'class' => RenderBehavior::className(), 'baseClass' => __CLASS__, 'baseViewDir' => '@frontend/views/car', 'defaultView' => 'model', 'viewNotFound' => '-', ] ]; } }
And use rendering in an place:
use common\components\Car; $car = new Car(); echo $car->render(); //render default view (in this example it is "model") echo $car->render('options',['data'=>'passed','to'=>'view']); //render view "options"
Inside view you can access to object by var $context
Example of view search process:
continue of example above:
class Sedan extends Car { ... } class Econom extends Sedan { ... } $car = new Econom(); echo $car->render('options'); //First, a view "options" will be search at @frontend/views/car/sedan/econom directory //If it is not found, then it will be search at @frontend/views/car/sedan directory //If it is not found, then it will be search at @frontend/views/car (it from behavior field baseViewDir) //If it is not found, then it will return viewNotFound text (in this example it is '-')