Yiiでwidgetを利用する場合、
<?php $form=$this->beginWidget('bootstrap.widgets.TbActiveForm', array( 'id'=>'user-form', 'enableAjaxValidation'=>false, 'enableClientValidation'=>true, 'clientOptions'=>array('validateOnSubmit'=>true), 'type'=>'horizontal', 'focus'=>array($model,'name'), )); ?>
のような感じに書くのですが、同じような複数のwidgetを設置する必要がある場合、同じ設定を毎回書くのは面倒です。この面倒を回避するために、widgetに渡すデフォルト値をあらかじめ設定しておく方法があります。例えば、上記widgetの場合、protected/config/main.phpに
'widgetFactory'=>array( 'widgets'=>array( 'TbActiveForm'=>array( 'enableAjaxValidation'=>false, 'enableClientValidation'=>true, 'clientOptions'=>array('validateOnSubmit'=>true), 'type'=>'horizontal', ), ), ),
のように書いておけば、
<?php $form=$this->beginWidget('bootstrap.widgets.TbActiveForm', array( 'id'=>'user-form', 'focus'=>array($model,'name'), )); ?>
のように省略して書くことができるようになります。