sfWidgetFormTimeのフォーマット指定

最近symfonyばかり触っているが、今日もハマったところのメモ

sfWidgetFormTimeを利用した日付と時刻の入力フォームのフォーマットを変更しようとしても出来なかった。
ダメだったコード。

abstract class BaseFormPropel extends sfFormPropel
{
  public function setup()
  {
    parent::setup();
    $this->widgetSchema->getFormFormatter()->setTranslationCatalogue('sf_admin');

    list($year, $month, $day) = explode("/", date('Y/n/d'));
    list($hour, $minute, $second) = explode(":", date('H:i:s'));

    foreach ($this->getWidgetSchema()->getFields() as $name => $widget)
    {
      switch (get_class($widget))
      {
        case 'sfWidgetFormDateTime':
          $widget->setOption('date', array('format' => '%year%年%month%月%day%日'));
          $widget->setOption('time', array('format' => '%hour%時%minute%分'));
          $widget->setOption('default', array(
            'year' => $year, 'month' => $month, 'day' => $day,
            'hour' => $hour, 'minute' => $minute));

          break;
        case 'sfWidgetFormDate':
          $widget->setOption('format', '%year%年%month%月%day%日');
          $widget->setOption('default', array(
            'year' => $year, 'month' => $month, 'day' => $day));
          break;
        case 'sfWidgetFormTime':
          $widget->setOption('format', '%hour%時%minute%分');
          break;
      }
    }
  }
}

日付のフォーマットは変更されるが、時刻のフォーマットが「%hour%:%minute%」のままになってしまう。
で、ソースを覗いていたところ、「format_without_seconds」という設定を発見。
いままで「format_without」を利用してたが、分を利用しない場合はどうやらコレが正解っぽい。