0

TYPO3 6.2.11 の現在の extension_builder で拡張機能をセットアップしました。バックエンドでの FAL ファイルのアップロードが機能していません。

extension_builder は extbase ではファイルのアップロードがまったく実装されていないと言っていますが、私が理解している限り ( https://github.com/helhum/upload_exampleを参照)、これは FE のアップロードに関するものです。正しい?

完全に通常の BE ファイルのアップロードのみが必要です。[新しい関係の作成] または [ファイルの選択とアップロード] で選択します。

直接アップロードが失敗し、「アップロードに失敗しました! 拡張子が "*" のファイルが必要です!」(または、TCA で指定した拡張子)。

参照の作成は機能しますが、保存後に参照が失われます。

このスクリーンショットは、保存前の 2 回の試行を示しています。

ここに画像の説明を入力

そして、保存した後、再び空にします:

ここに画像の説明を入力

どうすればこれを機能させることができますか? リレーションを保存するためにレポにコードを追加する必要がありますか? それとも、基本的な設定が欠けているのでしょうか?

tt_content の場合、FAL 関係とアップロードは正常に機能します。

そして: 回避策として、通常の「Pibase」'type' => 'group','internal_type' => 'file'フィールドを使用することは可能ですか? しかし、その場合、モデルのゲッターとセッターはどのように見えるでしょうか? 普通の弦と同じ?

TCA:

    'apprenticeship_document' => array(
      'exclude' => 1,
      'label' => 'LLL:EXT:stellen/Resources/Private/Language/locallang_db.xlf:tx_stellen_domain_model_institution.apprenticeship_document',
      'config' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getFileFieldTCAConfig(
        'apprenticeshipDocument',
        array('maxitems' => 1),
        '*'
      ),
    ),

extension_builder によって作成されたモデル:

/**
 * apprenticeshipDocument
 *
 * @var \TYPO3\CMS\Extbase\Domain\Model\FileReference
 */
protected $apprenticeshipDocument = NULL;

/**
 * Returns the apprenticeshipDocument
 *
 * @return \TYPO3\CMS\Extbase\Domain\Model\FileReference $apprenticeshipDocument
 */
public function getApprenticeshipDocument() {
    return $this->apprenticeshipDocument;
}

/**
 * Sets the apprenticeshipDocument
 *
 * @param \TYPO3\CMS\Extbase\Domain\Model\FileReference $apprenticeshipDocument
 * @return void
 */

public function setApprenticeshipDocument(\TYPO3\CMS\Extbase\Domain\Model\FileReference $apprenticeshipDocument) {
    $this->apprenticeshipDocument = $apprenticeshipDocument;
}

\TYPO3\CMS\Extbase\Persistence\ObjectStorage<\TYPO3\CMS\Extbase\Domain\Model\FileReference>の代わりにも使用しようとしましたが\TYPO3\CMS\Extbase\Domain\Model\FileReference $apprenticeshipDocument、それでも違いはありません。

4

1 に答える 1

1

TCA 定義にエラーがあります。 の最初の引数はgetFileFieldTCAConfig、lowerCamelCase ではなく、より低いアンダースコアを使用する必要があります。

'apprenticeship_document' => array(
  'exclude' => 1,
  'label' => 'LLL:EXT:stellen/Resources/Private/Language/locallang_db.xlf:tx_stellen_domain_model_institution.apprenticeship_document',
  'config' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getFileFieldTCAConfig(
    'apprenticeship_document',
    array('maxitems' => 1),
    'pdf,doc,docx'
  ),
),

それとは別に、「*」は有効なファイル拡張子ではありません。ファイル拡張子のカンマ区切りのリストを定義する必要があります (例: 'doc,docx,pdf')。ドキュメントを読むと、ファイル拡張子のワイルドカードはありません。

FE でのファイルのアップロードは、Extension Builder では実装されていませんが、Helmut Hummel が提供するソリューションでは完全に可能です。

于 2015-03-31T09:29:43.010 に答える