Fileupload TYPO3 在 findAll() 上获取空值

Fileupload TYPO3 getting null on findAll()

您好,有一个用于上传文件的后端模块扩展。我使用 helhum 文件上传作为参考。文件上传成功。但是 table 的文件更新了 sys_file_reference 的 uid 而不是没有文件。为什么会这样?

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

我的参考是 this 我在哪里可以设置 table 名称和 no_files 我的 table 和 sys_file 参考

我假设 属性 "file" 是一个 1:1 关系,这就是为什么文件引用的 UID 是写入字段的原因。

如果 属性 是 M:N 或 1:N table 你会看到文件的数量,如你所料 - Extbase 需要知道你想要的属性.

上包含 FileReference 对象的 ObjectStorage

关于主题,如果您在执行 findAll 时存储库 returns NULL,这几乎总是因为存储页面限制。为了克服它,在查询返回之前重写 createQuery 和操作 QuerySettings,设置 respectStoragePageUids(false)。

我找到了问题的解决方案。我的模特是

/**
     * 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;
    }

我从参数列表中删除了类型。现在它的工作fine.My更新代码如下

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