提交表单时,Symfony DateTime返回null

时间:2016-11-29 23:03:53

标签: forms datetime symfony

我的表单设置为DateTimeType,如下所示:

->add('createdOn', DateTimeType::class, [
            'widget' => 'single_text',              
            'data' => $this->date,
            'format' => 'yyyy-MM-dd hh:mm',
            'input' => 'datetime',
        ]);

html完全按照我期望的方式呈现,其值为2016-11-29 05:57,但是当我提交表单时,它表示日期时间为空。不知道为什么会这样。创建的on字段是数据库中的日期时间类型。

如果我删除所有选项并像这样设置表单类型: ->add('createdOn', DateTimeType::class) 它工作正常。我遇到的问题是风格与我的CSS不匹配。我希望它在一个显示日期时间的输入框中。

让我知道您可能需要的其他信息。

编辑:这是控制器动作:

$form = $this->createForm(JobTitleFormType::class);
    $form->handleRequest($request);

    if ($form->isSubmitted() && $form->isValid()) {
        $jobTitle = $form->getData();          

        $em = $this->getDoctrine()->getManager();
        $em->persist($jobTitle);
        $em->flush();

        $this->addFlash('success', 'Job Title "' . $form->get("jobTitle")->getData(). '" has been added.');

        //return new Response($email);
        return $this->redirectToRoute('setup_jobtitles');
    }

    return $this->render('setup/job-titles/job-titles-new.html.twig', [
        'jobTitleForm' => $form->createView(),
        'user' => $loggedInUser,
    ]);

有没有人有任何想法?

0 个答案:

没有答案