TCA复选框:通过itemsProcFunc设置默认值

时间:2018-11-30 13:48:57

标签: typo3 typo3-8.x

我想将复选框的默认值(TCA类型为“ check”)的条件设置为其他一些值(如果type = 100->已选中,否则未选中)。

因此,我创建了一个ItemsProcFunc,将其执行。如果调试输出,则设置该值,但对表单没有影响。

'property_name' => [
        'config' => [
            'type' => 'check',
            'items' => [
                '1' => [
                    '0' => 'LLL:EXT:lang/locallang_core.xlf:labels.enabled'
                ]
            ],
            'itemsProcFunc' => 'Vendor\\Extension\\Backend\\Event\\ItemsProcFunc->getCheckboxDefaultValue',
        ]
    ],

设置默认值的方法:

public static function getCheckboxDefaultValue(&$config)
{
    $config['config']['default'] = 1;
}

如果我调试$ config,则该值已正确设置,但在进入表单时会丢失。

array(6 items)
    items => array(1 item)
    config => array(4 items)
    type => 'check' (5 chars)
    items => array(1 item)
    default => 1 (integer)
    itemsProcFunc => 'Vendor\Extension\Backend\Event\ItemsProcFunc->getCheckboxDefaultValue'

任何提示表示赞赏。

0 个答案:

没有答案