我正在关注Symfony2的教程。 我正在用表格做项目。
第12章:表格| 150
我的代码:
public function newAction(Request $request)
{
$task = new Task();
$task->setTask('Find EiM group');
$task->setDueDate(new DateTime('tomorrow'));
$form = $this->createFormBuilder($task)
->add('task', 'text')
->add('dueDate', 'date')
->add('save', 'submit')
->getForm();
return $this->render('AcmeTaskBundle:Default:new.html.twig', array(
'form' => $form->createView()));
}
我从主题中收到错误。
No default option is configured for constraint Symfony\Component\Validator\Constraints\DateTime
它可以是什么? 怎么解决? 我严格遵循书中的例子。
答案 0 :(得分:29)
此:
$task->setDueDate(new DateTime('tomorrow'));
应该是:
$task->setDueDate(new \DateTime('tomorrow'));
注意Datetime之前的正斜杠。检查您的“use”语句,您可能已导入并使用类'Symfony \ Component \ Validator \ Constraints \ DateTime“
答案 1 :(得分:1)
http://symfony.com/doc/current/reference/forms/types/date.html
我不确定,但在此文档之后,基本用法是:
$builder->add('publishedAt', 'date', array(
'input' => 'datetime',
'widget' => 'choice',
));
或
$builder->add('publishedAt', 'date', array(
'input' => 'timestamp',
'widget' => 'choice',
));
也许你应该尝试在
之后插入选项数组'日期'