У меня есть пользовательский объект со свойством изображения. Когда я регистрирую пользователя из регистрационной формы, изображение отображается в виде профиля пользователя, а имя изображения сохраняется в базе данных. Но когда я хочу изменить профиль пользователя из формы редактирования, при отправке формы у меня появляется следующее сообщение: файл не найден
/**
* @ORM\Column(type="string", length=255, nullable=true)
* @Assert\File(mimeTypes={ "image/jpeg" })
*/
private $picture;
private $file;
```entity User methods
/**
* Get the value of file
*/
public function getFile()
{
return $this->file;
}
/**
* Set the value of file
*
* @return self
*/
public function setFile($file)
{
$this->file = $file;
return $this;
}
``` the method in the AccountController
/**
* Permet d'afficher le formulaire d'édition du profil
* @Route("/account/profile", name="account_profile")
*
* @return Response
*/
public function profile(Request $request, ObjectManager $manager)
{
$user = $this->getUser();
$form = $this->createForm(AccountType::class, $user);
$form->handleRequest($request);
if ($form->isSubmitted() && $form->isValid()) {
$user->setPicture(
new File($this->getParameter('upload_directory') . '/' . $user->getPicture())
);
$manager->persist($user);
$manager->flush();
$this->addFlash(
'success',
"Les modifications ont bien été enregistrées"
);
return $this->redirectToRoute('user_show');
}
return $this->render('account/profile.html.twig', [
'form' => $form->createView()
]);
}
I also created a pictureUploadListener entity that I declared in the service.yaml file