tjtjtjのメモ

自分のためのメモです

yiiext/twig-renderer

beignWidget/endWidgetでも書けます。->こちら
ここのcreateWidget/wedgit.run は何かの役に立つ(アンチパターンとか)かもしれないので残しておきます。

検証中のコードですがおいておきます。
{% set form = this.createWidget() %} すればwidgetをあきらめなくてもよさげです。this.endWidget のかわりに form.run してます。

<h1>Login</h1>

<p>Please fill out the following form with your login credentials:</p>

<div class="form">

{% set form = this.createWidget('system.web.widgets.CActiveForm', {
	'id':'login-form',
	'enableClientValidation':true,
	'clientOptions':{
		'validateOnSubmit':true,
	},
})  %}

	<p class="note">Fields with <span class="required">*</span> are required.</p>

	<div class="row">
		{{ form.labelEx(model,'username')|raw }}
		{{ form.textField(model,'username')|raw }}
		{{ form.error(model,'username')|raw }}
	</div>

	<div class="row">
		{{ form.labelEx(model,'password') |raw}}
		{{ form.passwordField(model,'password')|raw }}
		{{ form.error(model,'password')|raw }}
		<p class="hint">
			Hint: You may login with <tt>demo/demo</tt> or <tt>admin/admin</tt>.
		</p>
	</div>

	<div class="row rememberMe">
		{{ form.checkBox(model,'rememberMe')|raw }}
		{{ form.label(model,'rememberMe')|raw }}
		{{ form.error(model,'rememberMe')|raw }}
	</div>

	<div class="row buttons">
		{{ C.html.submitButton('Login') |raw }}
	</div>

{{ form.run }}
</div><!-- form -->