gpt4 book ai didi

symfony - 奏鸣曲日期范围

转载 作者:行者123 更新时间:2023-12-02 18:10:28 26 4
gpt4 key购买 nike

我有一个小问题,我正在使用 Sonata 开发一个小项目,但我试图弄清楚如何自定义一个人可以选择日期的日期范围,例如从 2000 年 1 月 1 日到 2020 年 12 月 31 日。有人可以吗告诉我在索纳塔文档中哪里可以找到它或告诉我如何做?因为我有点看看,没有什么可以完全自定义日期的选择。

提前致谢

编辑:

在 symfony 文档中我发现了这个

'days' => range(1,31)

这里:http://symfony.com/doc/current/reference/forms/types/date.html

但我在奏鸣曲文档中找不到任何内容。并且不像 Symfony 那样工作:/

最佳答案

我假设您在奏鸣曲中使用sonata_type_date_picker字段。文档是here 。那么你的案例可以这样实现:

->add('userDate', 'sonata_type_date_picker', [
'dp_min_date' => 'Jan 1, 2000', //todo: date format here depends on your setup. Basicly it's the same format, you see in text field after you selected data in datepicker.
'dp_max_date' => 'Dec 31, 2020',
]);

或者,您可以使用带有 3 个下拉列表的日期选择器 - 它是标准 Symfony 日期 字段,与 SonataAdmin 配合良好:

->add('userDate', 'date', [
'years' => range(2000, 2020),
]);

我还建议使用相同的规则添加后端验证(在实体中):

/**
* @var \DateTime()
*
* @Assert\Range(
* min = "2000-01-01",
* max = "2020-12-31"
* )
*/
protected $userDate;

关于symfony - 奏鸣曲日期范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46325511/

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