загрузка файла symfony2 - PullRequest
       11

загрузка файла symfony2

8 голосов
/ 09 августа 2011

Я следовал этому руководству: http://symfony.com/doc/current/reference/forms/types/file.html

и протестировал образец здесь

Однако, когда я пробую код, у меня появляется ошибка:

Call to undefined method Symfony\Component\Form\Form::move()

Это происходит со строкой:

$form['attachment']->move($dir, $someNewFilename);

Интересно, почему возникает эта ошибка?

Ответы [ 3 ]

18 голосов
/ 09 августа 2011

Это не использует класс 'Form', но я успешно извлек загрузку прямо из запроса:

/* @var Request */
$request = $this->getRequest();

/* @var UploadedFile */
$uploadedFile = $request->files->get('upfile'); //upfile must be the value of the name attribute in the <input> tag
if (null === $uploadedFile)
    return new RedirectResponse($this->generateUrl('_upload_index'));

/* @var string*/
$filename = $uploadedFile->getPathname();
17 голосов
/ 10 августа 2011

Я наконец нашел решение

Документ не в порядке

вместо:

$form['attachment']->move($dir, $someNewFilename);

должно быть:

$form['attachment']->getData()->move($dir, $someNewFilename);
5 голосов
/ 06 октября 2011

Теперь лучше сделать, как описано в официальной документации: http://symfony.com/doc/2.0/cookbook/doctrine/file_uploads.html

...