2017 © Pedro Peláez
 

yii2-extension yii2-giiant-twig

Twig templates for the Yii 2 Giiant plugin

image

esquire900/yii2-giiant-twig

Twig templates for the Yii 2 Giiant plugin

  • Sunday, January 18, 2015
  • by esquire900
  • Repository
  • 1 Watchers
  • 3 Stars
  • 316 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 2 Forks
  • 1 Open issues
  • 2 Versions
  • 1 % Grown

The README.md

yii2-giiant

Twig templates for the Giiant Yii2 code generator, (*1)

What is it?

This extension provides templates for the CRUD models from Giiant in the twig templating language. There were no templates available for twig yet in the yii2 context, so this should save a lot of time for those wanting to work with twig :), (*2)

That means a form will not look like this:, (*3)

<?php $form = ActiveForm::begin(['id' => 'contact-form']); ?>
    <?= $form->field($model, 'name') ?>
    <?= $form->field($model, 'email') ?>
    <?= $form->field($model, 'subject') ?>
    <?= $form->field($model, 'body')->textArea(['rows' => 6]) ?>
    <?= $form->field($model, 'verifyCode')->widget(Captcha::className(), [
        'template' => '<div class="row"><div class="col-lg-3">{image}</div><div class="col-lg-6">{input}</div></div>',
    ]) ?>
    <div class="form-group">
        <?= Html::submitButton('Submit', ['class' => 'btn btn-primary', 'name' => 'contact-button']) ?>
    </div>
<?php ActiveForm::end(); ?>

But more like this, (*4)

{% set form = active_form_begin({
    'action': ['index'],
    'method': 'get'
}) %}

{{ form.field(model, 'id') }}
{{ form.field(model, 'name') }}
{{ form.field(model, 'owner_name') }}
{{ form.field(model, 'owner_avatar') }}
{{ form.field(model, 'description') }}

<div class="form-group">
    {{ html.submitButton('Search', {'class' : 'btn btn-primary'}) | raw }}
    {{ html.resetButton('Reset', {'class' : 'btn btn-primary'}) | raw }}
</div>

{{ active_form_end() }}

Installation

The preferred way to install this extension is through composer., (*5)

composer.phar require esquire900/yii2-giiant-twig:"*"

The generators are registered automatically in the application bootstrap process, if the Gii module is enabled, (*6)

Usage

Visit your application's Gii (eg. index.php?r=gii and choose the CRUD generator from the main menu screen. Make sure that:, (*7)

  • the "twig" template is selected at the bottom
  • you use namespaces for the controller and models
  • you fill in a search model

For basic usage instructions see the Yii2 Guide section for Gii., (*8)

Command Line

Gii creates php files by default, which cannot be easily changed. This extention generates .twig.php files, to convert them automagically, simply run the following from the root folder, (*9)

./yii giiant-twig

(for basic app only, but you can simply change the behavior for other templates), (*10)

Why should I even learn this stuff?

Not only because it's easier to read for non-coders (like those hipster designers nowadays), but it forces you to only use "view" logic in your views, which gives cleaner code and better serparation of responsibilities., (*11)

Thanks

Special thanks to the whole yii community, and schmunk42 for creating giiant, (*12)

The Versions

18/01 2015

dev-master

9999999-dev https://github.com/esquire900/yii2-giiant-twig

Twig templates for the Yii 2 Giiant plugin

  Sources   Download

BSD-3-Clause

The Requires

 

yii2 crud gii

17/01 2015

0.1.0

0.1.0.0 https://github.com/esquire900/yii2-giiant-twig

Twig templates for the Yii 2 Giiant plugin

  Sources   Download

BSD-3-Clause

The Requires

 

yii2 crud gii