我目前正在使用Symfony表单构建器来处理表单,但是在更改日期格式时遇到一些问题。
我创建了一个DateType扩展名以覆盖所有字段的默认值,这是我的代码:
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults(
array(
'placeholder' => ['year' => 'Jaar', 'month' => 'Maand', 'day' => 'Dag',],
'years' => range(1920, 2019),
'format' => 'dd-MM-yyyy',
)
);
}
您可以在format选项中看到,我尝试将默认格式更改为'dd-MM-yyyy',但没有成功。 (默认为yyyy-MM-dd)
这不会改变实际的格式,只是在前端显示2个“-”。
有人知道如何解决这个问题吗? Symfony文档使用:
'widget' => 'single_text',
但这将意味着前端代码中的许多更改。
答案 0 :(得分:0)
single_text小部件的默认值为yyyy-MM-dd,但是您可以通过将格式作为字符串传递来覆盖它。
use Symfony\Component\Form\Extension\Core\Type\DateType;
$builder->add('date_created', DateType::class, [
'widget' => 'single_text',
'format' => 'dd-MM-yyyy',
]);
来源:https://symfony.com/doc/current/reference/forms/types/date.html