[英]TYPO3 how to add virtual column to the TCA?
如何向 TCA (TYPO3 8) 添加虚拟列? 我有一个包含数据的 1:n 表,我想将后端中的数据计数显示到当前元素。 我需要这样的东西:
$fields = [
'counts7d' => [
'exclude' => false,
'label' => 'last 7 days',
'config' => [
'type' => 'none',
'procFunc' => '\Namespace\MyClass->MyMethod',
'readOnly' => true,
'params' => [
'period => '7d'
]
]
],
'counts30d' => [
'exclude' => false,
'label' => 'last 30 days',
'config' => [
'type' => 'none',
'procFunc' => '\Namespace\MyClass->MyMethod',
'readOnly' => true,
'params' => [
'period => '30d'
]
]
],
];
pseudo function:
public function myMethod($element, $params){
$sql = "SELECT count(*) FROM TABLE WHERE pid=$element[uid] and date > $params[period]";
return sql_count…
}
该字段应该只为后端用户提供信息。
有没有人有想法?
谢谢奥利弗
TCA 字段类型user正是您要查找的内容:
'counts7d' => [
'exclude' => false,
'label' => 'last 7 days',
'config' => [
'type' => 'user',
'userFunc' => \Namespace\MyClass::class . '->MyMethod',
'parameters' => [
'period => '7d',
],
],
],
TCA 字段类型none正是您要查找的内容。 类型都不是,这并不一定需要一个数据库领域唯一的类型。 要操作它,您可以使用允许您使用自定义 php 函数的userFunc 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.