DateTime-Symfony FormBuilder传递值

时间:2019-02-01 15:23:45

标签: php datetime formbuilder

我正在从数据库中获取一个特定的DateTime值,我希望将其作为可选值传递给表单呈现(不起作用),但是还可以更改一个选项(该选项起作用)。

我正在获取日期,但无法通过表单生成器传递日期。

我的(部分)代码:

    $lastDate = $transactions[count($accounts) - 1]->getDate();
    $theDate = $lastDate->format('Y-m-d H:i:s');

    $form = $this->createFormBuilder()
            ->add('issuingDate', DateType::class, array(
                'data'  => $theDate,
                'label' => false,
                'attr'  => array(
                    'date' => (new \DateTime())->format('Y-m-d  H:i:s'),
                )))
            ->add('submit', SubmitType::class, array('label' => 'Save', 'attr' => [
                'class' => 'btn btn-bg btn-primary'
            ]))
            ->getForm();

其他一切似乎都正常。

1 个答案:

答案 0 :(得分:0)

$lastDate = $transactions[count($accounts) - 1]->getDate();


$form = $this->createFormBuilder()
        ->add('issuingDate', DateType::class, array(
            'data'  => $lastDate,
            'data_class' => \DateTime::class,
            'label' => false,
            ))
        ->add('submit', SubmitType::class, array('label' => 'Save', 'attr' => [
            'class' => 'btn btn-bg btn-primary'
        ]))
        ->getForm();

这应该足以显示一个表单,其中的日期预填充了$ lastDate对象的值。