在表单生成器 symfony3 中获取日期时间
Get datetime in form builder symfony3
如何获取日期时间并添加到数据库中,我在 (Bundle/Form/ClassType.php)
处有这样的表单类型生成器
$registered = date('Y-m-d');
$builder->add('registered', TextType::class, array(
'label' => 'registered',
'data' => $registered,
));
这是我的实体 class (Bundle/Entity/Class.php)
/**
* @var \DateTime
*
* @ORM\Column(name="registered", type="datetime", columnDefinition="TIMESTAMP DEFAULT CURRENT_TIMESTAMP")
*/
private $registered;
问题是我无法在数据库上添加这个,我收到类似
的错误
错误:调用字符串上的成员函数 format()
有什么帮助吗?
您需要使用 DateType 而不是 TextType。
->add('registered', DateType::class, array(
'widget' => 'single_text',
'input' => 'string',
'format' => 'yyyy-MM-dd',
'data' => $registered,
'attr' => array(
'placeholder' => 'yyyy-MM-dd',
)
))
如何获取日期时间并添加到数据库中,我在 (Bundle/Form/ClassType.php)
处有这样的表单类型生成器$registered = date('Y-m-d');
$builder->add('registered', TextType::class, array(
'label' => 'registered',
'data' => $registered,
));
这是我的实体 class (Bundle/Entity/Class.php)
/**
* @var \DateTime
*
* @ORM\Column(name="registered", type="datetime", columnDefinition="TIMESTAMP DEFAULT CURRENT_TIMESTAMP")
*/
private $registered;
问题是我无法在数据库上添加这个,我收到类似
的错误错误:调用字符串上的成员函数 format()
有什么帮助吗?
您需要使用 DateType 而不是 TextType。
->add('registered', DateType::class, array(
'widget' => 'single_text',
'input' => 'string',
'format' => 'yyyy-MM-dd',
'data' => $registered,
'attr' => array(
'placeholder' => 'yyyy-MM-dd',
)
))