Я пытаюсь обновить объект, изменив его изображение, но фотография просто исчезает.БД изменилось правильно, и даже был вызван метод setImageFile, но сам файл не появился.
Моя сущность
use Symfony\Component\HttpFoundation\File\File;
use Symfony\Component\HttpFoundation\File\UploadedFile;
use Vich\UploaderBundle\Mapping\Annotation as Vich;
/**
* @ORM\Entity(repositoryClass="App\Repository\CategoryRepository")
* @Vich\Uploadable
*/
class Category
{
/**
* @Vich\UploadableField(mapping="categories", fileNameProperty="image")
*/
private $imageFile;
/**
* @ORM\Column(type="string", length=255)
*/
private $image;
/**
* @ORM\Column(type="datetime")
* @ORM\Version
*/
private $updationDate;
public function getImage(): ?string
{
return $this->image;
}
public function setImage(string $image): self
{
$this->image = $image;
return $this;
}
public function getUpdationDate(): ?\DateTimeInterface
{
return $this->updationDate;
}
public function setUpdationDate(\DateTimeInterface $updationDate): self
{
$this->updationDate = $updationDate;
return $this;
}
public function setImageFile($image): void
{
$this->imageFile = $image;
if ($image instanceof UploadedFile) {
$this->setUpdationDate(new DateTime());
}
}
public function getImageFile(): ?File
{
return $this->imageFile;
}
}
Моя конфигурация
vich_uploader:
db_driver: orm
mappings:
categories:
uri_prefix: /images/categories
upload_destination: '%kernel.project_dir%/public/images/categories'
namer: Vich\UploaderBundle\Naming\UniqidNamer
inject_on_load: true
delete_on_update: true
delete_on_remove: true
Я искал информацию впредыдущий пост stackoverflow, но все решения не работали для меня.Я использую Symfony 4.1, если это помогает