我需要一个后端字段,用户可以在其中输入时间(即“23:13:46”,小时,分钟,秒)。但也应该可以根本不输入时间(当然应该与00:00:00不同)。是否可以使字段可以为空?
到目前为止我所拥有的是:
$GLOBALS['TCA']['tx_something_domain_model_delivery'] = array(
'columns' => array(
'deadline' => array(
'exclude' => 1,
'label' => 'Deadline',
'config' => array(
'dbType' => 'time',
'type' => 'input',
),
),
...
),
);
但如果我在截止日期字段中没有输入任何内容,则会将“00:00:00”存储到数据库中。数据库如下所示:
CREATE TABLE IF NOT EXISTS `tx_something_domain_model_delivery` (
`uid` int(11) NOT NULL,
`pid` int(11) NOT NULL DEFAULT '0',
`deadline` time DEFAULT NULL,
...
);
因此截止日期可以为空,但我不知道如何实现这一目标。
顺便说一句:我是typo3的新手,所以如果你认为我创造这个领域的方式是迟钝的还是有更好的方法,我会感谢任何建议。答案 0 :(得分:2)
首先:您正在以预期的方式创建字段: - )
第二:您需要在字段配置中使用eval
属性。将设置null
添加到其中。您的配置应该如下所示:
$GLOBALS['TCA']['tx_something_domain_model_delivery'] = array(
'columns' => array(
'deadline' => array(
'exclude' => 1,
'label' => 'Deadline',
'config' => array(
'dbType' => 'time',
'type' => 'input',
'eval' => 'null',
),
),
...
),
);
您可能感兴趣的eval
设置有更多设置。