gpt4 book ai didi

symfony2-easyadmin - EasyAdmin Symfony 日期从 2012 年开始到 2022 年底

转载 作者:行者123 更新时间:2023-12-03 22:23:21 25 4
gpt4 key购买 nike

我是 Symfony 和 EasyAdmin 的新手。在我的实体中,我有一个生日。但是当我显示它时,它显示的是 2012 年开始,2022 年结束。我该如何修复它?

这是代码:

/**
* @var \date
*
* @ORM\Column(name="birth_day", type="date")
*/
private $birthDay;

最佳答案

您遇到了 Symfony 默认年份范围。为了解决这个问题,你可以像这样构造你自己的 DateTime 类型:

<?php

namespace AppBundle\AdminForm\Field;

use Symfony\Component\Form\Extension\Core\Type\DateTimeType;
use Symfony\Component\OptionsResolver\OptionsResolver;

class MyCustomDateType extends DateTimeType
{
public function configureOptions(OptionsResolver $resolver)
{
// Set the defaults from the DateTimeType we're extending from
parent::configureOptions($resolver);

// Override: Go back 20 years and add 20 years
$resolver->setDefault('years', range(date('Y') - 20, date('Y') + 20));

// Override: Use an hour range between 08:00AM and 11:00PM
$resolver->setDefault('hours', range(8, 23));
}
}

然后,您可以指示 EasyAdmin 使用这种类型,如下所示:

- { property: 'occurance', 
type: 'AppBundle\AdminForm\Field\MyCustomDateType',
label: 'Date and time' }

关于symfony2-easyadmin - EasyAdmin Symfony 日期从 2012 年开始到 2022 年底,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45317646/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com