sfFormのオプション等を共通化
例えばsfWidgetFormDateなどは、formatは常に%year%/%month%/%day%で設定したいけど、毎回書くのはあまりに無駄。
そういうときはBaseFormPropelやBaseFormFilterPropelのsetupに共通処理を書いてやれば良い。
以下はフィルタに書いた例。
abstract class BaseFormFilterPropel extends sfFormFilterPropel { public function setup() { $fields = $this->getWidgetSchema()->getFields(); foreach($fields as $name => $field) { /* @var $field sfWidget */ if($field instanceof sfWidgetFormFilterDate) { $field->setOption('from_date', new sfWidgetFormDate(array( 'format' => '%year%/%month%/%day%' ))); $field->setOption('to_date', new sfWidgetFormDate(array( 'format' =>'%year%/%month%/%day%' ))); $field->setOption('template', '%from_date%<br />~ %to_date%'); } } } }