2017-01-19 4 views
0

こんにちは、ファイルをアップロードするためのバックエンドモジュール拡張があります。私は参照のためにheluum fileuploadを使用しています。ファイルのアップロードに成功しました。しかし、テーブルのファイルフィールドは、ファイルの代わりにsys_file_referenceのuidを更新します。それはなぜ起こるのですか?FileUpload TYPO3でfindAll()がnullになる

<f:form.upload property="file" /> 

私の参照は、私は、テーブル名と私のテーブルでno_filesとsys_file参照を設定することができますthisある

答えて

0

私は私の問題の解決策を得ました。私のモデルは、その作業fine.My更新されたコードが

/** 
* Sets the file 
* 
* @param \TYPO3\CMS\Extbase\Domain\Model\FileReference $file 
* @return void 
*/ 
public function setFile($file = NULL) 
{ 
    $this->file = $file; 
} 
を下回っている.Now私は引数リストからタイプを削除

/** 
    * Sets the file 
    * 
    * @param \TYPO3\CMS\Extbase\Domain\Model\FileReference $file 
    * @return void 
    */ 
    public function setFile(\TYPO3\CMS\Extbase\Domain\Model\FileReference $file = NULL) 
    { 
     $this->file = $file; 
    } 

ました

1

プロパティ「ファイル」私は1であると仮定しますが、なぜUIDである1の関係をファイル参照は、フィールドに書き込まれるものです。

プロパティがM:Nまたは1:Nのテーブルであったとすると、期待通りにファイル数が表示され、FileReferenceオブジェクトを含むObjectStorageをプロパティに追加する必要があることがExtbaseによって分かります。

件名に関して、findAllを実行したときにリポジトリがNULLを返した場合、これはほとんどの場合、ストレージページの制限が原因です。これを克服するには、createQueryをオーバーライドし、返される前にクエリのQuerySettingsを操作して、respectStoragePageUids(false)を設定します。

関連する問題