正在处理一个应该有基于LLL翻译的默认字段的字段。
'default' => 'LLL:EXT:myext/Resources/Private/Language/Backend.xlf:field.myfield.default',
我希望翻译中定义的值,但它包含字符串''LLL:EXT:myext / Resources / Private / Language / Backend.xlf:field.myfield.default'。如何使用LLL Translation在TCA中定义默认值?
cu n00n
答案 0 :(得分:2)
这只能由自定义FormProvider实现,因为其中一个核心还不支持这个。签出代码
// Special handling for eval null
if (!empty($fieldConfig['config']['eval']) && GeneralUtility::inList($fieldConfig['config']['eval'], 'null')) {
if (// Field exists and is set to NULL
array_key_exists($fieldName, $databaseRow)
// Default NULL is set, and this is a new record!
|| (array_key_exists('default', $fieldConfig['config']) && $fieldConfig['config']['default'] === null)
) {
$newRow[$fieldName] = null;
} else {
$newRow[$fieldName] = (string)$fieldConfig['config']['default'];
}
} else {
// Fun part: This forces empty string for any field even if no default is set. Unsure if that is a good idea.
$newRow[$fieldName] = (string)$fieldConfig['config']['default'];
}
您可以在https://forge.typo3.org/projects/typo3cms-core/issues处打开问题。
与此同时,我做了一个小扩展,可以使用所需的功能。这可以在这里找到:https://github.com/georgringer/defaultlll。