Silex / Symfony2表单中的默认日期时间数据

时间:2012-10-17 05:43:43

标签: symfony symfony-forms silex

我正在尝试创建一个允许用户编辑数据的表单。我需要从表中读取一个值并使用该数据预填充表单。

在下面的代码中,我尝试在表单中设置2007-02-20 16:48:00的值。

我尝试了什么:

$form = $app['form.factory']->createBuilder( 'form' )
    ->add('start', 'datetime', array(
      'data' => '2007-02-20 16:48:00')
  )
    ->add('end', 'datetime')
    ->getForm();

我得到了什么:

  

UnexpectedTypeException:类型为“\ DateTime”的预期参数,   “字符串”给出

由于

1 个答案:

答案 0 :(得分:1)

Symfony想要一个DateTime对象,所以试试:

$form = $app['form.factory']->createBuilder( 'form' )
    ->add('start', 'datetime', array(
        'data' => new \DateTime('2007-02-20 16:48:00'))
      )
    ->add('end', 'datetime')
    ->getForm();