【问题标题】:sys_file_metadata table extended but field not showingsys_file_metadata 表扩展但字段未显示
【发布时间】:2019-12-05 08:44:20
【问题描述】:

我通过添加一列扩展了 sys_file_metadata 表。表中存在新输入的列,但该字段未在 flexform 中显示。我错过了什么吗?

【问题讨论】:

  • 请描述您是如何添加此字段的。向我们展示 TCA 代码,以便我们查看问题所在。
  • 我在下面列出了我的代码。 'protected_file' => [ 'exclude' => true, 'label' => 'LLL:EXT:spt_downloads/Resources/Private/Language/locallang_db.xlf:tx_sptdownloads_domain_model_downloadmanager.protected_file', 'config' => [ 'type' = > 'check', 'items' => [ '1' => [ '0' => 'LLL:EXT:lang/Resources/Private/Language/locallang_core.xlf:labels.enabled' ] ], 'default' = > 0, ] ],

标签: file typo3 content-management-system flexform


【解决方案1】:

您必须将您的字段添加到 TCA 列和 showitem:

<?php

use TYPO3\CMS\Core\Utility\ExtensionManagementUtility;

defined('TYPO3_MODE') || die();

$tempColumns = [
    'protected_file' => [
        'exclude' => true,
        'label'   => 'LLL:EXT:spt_downloads/Resources/Private/Language/locallang_db.xlf:tx_sptdownloads_domain_model_downloadmanager.protected_file',
        'config'  => [
            'type'    => 'check',
            'items'   => [
                '1' => [
                    '0' => 'LLL:EXT:lang/Resources/Private/Language/locallang_core.xlf:labels.enabled'
                ]
            ],
            'default' => 0,
        ]
    ]
];

ExtensionManagementUtility::addTCAcolumns('sys_file_metadata', $tempColumns);
ExtensionManagementUtility::addToAllTCAtypes('sys_file_metadata', 'protected_file');

重要的是不要忘记addTCAcolumns 和addToAllTCAtypes。第一个将您的字段添加到 TCA,第二个通过将字段放入 tca 的 showitem 使该字段在元素的编辑器中可见。

您还将此代码放入spt_downloads/Configuration/TCA/Overrides/sys_file_metadata.php。在ext_tables.php 中使用此代码已被弃用且不再有效。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-01-17
    • 2015-08-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多