更改symfony日期类型输入显示格式

问题描述 投票:1回答:1

嗨,我正在使用Symfony Date-Type和widget single_text。这是我的代码。

use Symfony\Component\Form\Extension\Core\Type\DateType;
// ...

$builder->add('date_created', DateType::class, [
    'widget' => 'single_text',
    // this is actually the default format for single_text
    'format' => 'yyyy-MM-dd',
]);

我得到了这个输出。

enter image description here

但我需要将其显示为mm / dd / yyyy。有没有办法做到这一点?

symfony symfony-forms
1个回答
2
投票

有两种选择:

  • 使用html5(您当前的设置)。在这种情况下,文档说“如果您希望将字段呈现为HTML5”日期“字段,则必须使用带有yyyy-MM-dd格式的single_text小部件......”。实际上,浏览器会显示具有30/12/2019值的html5小部件,但在提交时发送2019-12-30。检查自己:https://www.w3schools.com/html/tryit.asp?filename=tryhtml_input_date
  • 不要使用html5:
$builder->add('date_created', DateType::class, [
    'widget' => 'single_text',
    'html5' => false,
    'format' => 'yyyy-MM-dd',
]);

您将能够以yyyy-MM-dd格式设置和提交日期。

© www.soinside.com 2019 - 2024. All rights reserved.