首页 > 解决方案 > TYPO3 8.7 后端 - 更改日期选择器的范围

问题描述

我需要在 TYPO3 后端输入 1900 年之前的出生年份。

如果我尝试将 1879 年写为生日,TYPO3 会将日期更改为 2018。

是否可以更改它以及如何更改?

这是我的 TCA:

"year_of_birth" => [
    "exclude" => 0,
    'label' => 'LLL:EXT:xxx/Resources/Private/Language/locallang_db.xml:fe_users.year_of_birth',
    'config' => [
        'type' => 'input',
        'renderType' => 'inputDateTime',
        'dbType' => 'date',
        'eval' => 'date',
        'range' => [
            'upper' => mktime(0, 0, 0, 12, 31, 1960), //'31-12-1960',            
            'lower' => mktime(0, 0, 0, 1, 1, 1860) //'01-01-1860',
        ],        
    ],
],

在此处输入图像描述 在此处输入图像描述

标签: datepickerbackendtypo3-8.x

解决方案


到目前为止,TYPO3 中的日期/时间字段由整数表示,并且基于 unixtime,它为您提供从 1903 到 2039 的范围(如果包含负值)。
还有实现向导的 Javascript。由于评估中有一些特殊情况(+1 等于 'tommorow',01012000+40 给出 2000 年的第 41 天(2 月 10 日)),因此结果日期是“猜测的”[1],你会得到完全不同的结果.

您需要编写自己的向导,这些向导不基于 unixtime。

[1] 不是真的猜到了,有一些模式被尝试并显示匹配结果


推荐阅读