Typo3 6.0 -加载表单字段取决于新闻2.1的类型



我是Typo3的新手,我使用的是6.0版本。我做了一个自定义扩展,从新闻2.1扩展,我做了一些自定义字段,并创建了一种新的新闻类型,称为"活动"。我想做的是,当你从选择类型中选择"Activity"时,表单会重新加载我想要的自定义字段。

换句话说,我想重现当您将new的类型从"News"更改为"Internal page"时发生的情况,但是我想要的字段如下:(In ext_tables.php)

$tmp_activite_columns = array(
'act_field1' => array(
    'exclude' => 0,
    'label' => 'LLL:EXT:myExt/Resources/Private/Language/locallang_db.xlf:myExt.act_field1',
    'config' => array(
        'type' => 'input',
        'size' => 30,
        'eval' => 'trim'
    ),
),
'act_axe' => array(
    'exclude' => 0,
    'label' => 'LLL:EXT:myExt/Resources/Private/Language/locallang_db.xlf:myExt.act_axe',
    'config' => array(
        'type' => 'input',
        'size' => 30,
        'eval' => 'trim'
    ),
),
);

如何使用$tmp_activite_columns使表单加载这些字段?

必须将这些列永久地添加到TCA中。通过TCA,你可以定义一个displayCond(显示条件)到你想要显示的字段,如果另一个字段有一定的值。

我假设你的表单已经重新加载时,你选择的类型,所以这里是一个例子,displayCond在TCA:

'act_field1' => array(
  'displayCond' => 'FIELD:type:=:3',
  'exclude' => 0,
  'label' => 'LLL:EXT:myExt/Resources/Private/Language/locallang_db.xlf:myExt.act_field1',
  'config' => array(
    'type' => 'input',
    'size' => 30,
    'eval' => 'trim'
   ),
),

基本上你检查字段type是否有值3。您可以在TCA文档中找到有关displayCond的更多信息。

最新更新