Передать параметр из контроллера в Doctrine EventListener - PullRequest
0 голосов
/ 29 июня 2018

Я читаю это руководство по настройке Doctrine EventListener для загрузки и редактирования файла в сущности: https://ourcodeworld.com/articles/read/603/how-to-configure-a-file-uploader-for-a-single-field-doctrine-entity-in-symfony-3-3

Я хочу передать динамические параметры из контроллера в сервис. Я изменил FileUploader, чтобы дать путь и имя файла от контроллера. Но я не могу получить эти параметры из DoctrineEventListener.

Мой FileUploader:

    /**
 * @param UploadedFile $file
 * @param string $name
 * @return string $fileName
 */
public function getUniqueName(UploadedFile $file, $name) {
    $fileName = $name.'_'.md5(uniqid()).'.'.$file->guessExtension();

    return $fileName;
}
/**
 * @param UploadedFile $file
 * @param string $targetDir
 * @param string $name
 * @return string
 */
public function uploadImage(UploadedFile $file, $targetDir, $name)
{
    $fileName = $this->getUniqueName($file, $name);

    if ($file->guessExtension() == 'gif' || $file->guessExtension() == 'jpeg' ||
        $file->guessExtension() == 'pjpeg' || $file->guessExtension() == 'png')
    {
        $file->move($targetDir, $fileName);
        return $fileName;
    }
    else {
        return 'Type de photo non supporté. Veuillez choisir un fichier .png ou .jpg.';
    }

}

Остальная часть моего кода такая же, как в учебнике.

...