1

私はTypo3が初めてで、バージョン6.0を使用しています。News 2.1 を拡張したカスタム拡張機能を作成し、いくつかのカスタム フィールドを作成して、"Activity" と呼ばれる新しいタイプのニュースを作成しました。私がやりたいことは、選択タイプから「アクティビティ」を選択すると、必要なカスタムフィールドでフォームがリロードされることです。

つまり、たとえば new のタイプを「News」から「Internal page」に変更したときに何が起こるかを再現したいのですが、次のように必要なフィールドを使用します:(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フォームにこれらのフィールドが読み込まれるようにするにはどうすればよいですか?

4

1 に答える 1

4

この列を 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'
   ),
),

したがって、基本的には、たとえば「タイプ」フィールドの値が「3」であるかどうかを確認します。詳細についてdisplayCondは、TCA のドキュメントを参照してください。

于 2013-06-06T08:32:07.803 に答える