两个值之间的 DisplayCond 等式
DisplayCond equation between two values
我想弄清楚当其他字段的两个值相同时如何在 TCA 中显示字段?
我的配置是我有两个字段 new
和 old
以及一个字段 second
。当 new
和 old
相同或 new=1
时显示 second
(这是有效的),我想到达那个字段。
$fields[] = array(
'new' => array(
'label' => "New ID",
'exclude' => 1,
'config' => array(
'type' => 'input'
)
),
);
$fields[] = array(
'old' => array(
'label' => "old ID",
'exclude' => 1,
'config' => array(
'type' => 'input'
)
),
);
$fields[] = array(
'second' => array(
'exclude' => 1,
'displayCond' => array(
'OR' => array(
'FIELD:new:=:1',
'FIELD:new:=FIELD:old'
)
),
'config' => array(
'type' => 'input',
'size' => '255',
)
),
);
语法 ''FIELD:new:=FIELD:old' 不允许显示条件解析器(我在核心 v8 中重写)。因此,您无法直接比较两个不同字段的值,无法在显示条件层面解决您的问题。
您可以通过添加一个新的数据提供程序(可能在 EvaluateDisplayConditionDataProvider 之后)来解决您的问题,在您的特殊情况下删除您的列,请参阅 https://docs.typo3.org/typo3cms/CoreApiReference/ApiOverview/FormEngine/Index.html 了解更多文档。
我想弄清楚当其他字段的两个值相同时如何在 TCA 中显示字段?
我的配置是我有两个字段 new
和 old
以及一个字段 second
。当 new
和 old
相同或 new=1
时显示 second
(这是有效的),我想到达那个字段。
$fields[] = array(
'new' => array(
'label' => "New ID",
'exclude' => 1,
'config' => array(
'type' => 'input'
)
),
);
$fields[] = array(
'old' => array(
'label' => "old ID",
'exclude' => 1,
'config' => array(
'type' => 'input'
)
),
);
$fields[] = array(
'second' => array(
'exclude' => 1,
'displayCond' => array(
'OR' => array(
'FIELD:new:=:1',
'FIELD:new:=FIELD:old'
)
),
'config' => array(
'type' => 'input',
'size' => '255',
)
),
);
语法 ''FIELD:new:=FIELD:old' 不允许显示条件解析器(我在核心 v8 中重写)。因此,您无法直接比较两个不同字段的值,无法在显示条件层面解决您的问题。
您可以通过添加一个新的数据提供程序(可能在 EvaluateDisplayConditionDataProvider 之后)来解决您的问题,在您的特殊情况下删除您的列,请参阅 https://docs.typo3.org/typo3cms/CoreApiReference/ApiOverview/FormEngine/Index.html 了解更多文档。