Я использую загружаемое расширение и очень доволен этим. У меня есть объект с одним полем в качестве загружаемого (фото), а другое поле - аннотация для этой фотографии (аннотация). Когда я впервые создаю объект, я выбираю файл и добавляю аннотацию, и все работает нормально, но когда я хочу обновить только аннотацию, он теряет сохраненный путь ранее загруженной фотографии. Есть ли способ сохранить старые значения, если для этого поля будет нуль?
Это моя сущность.
/**
* Photo
*
* @ORM\Table()
* @ORM\Entity
* @Gedmo\Uploadable(
* path="up/photo",
* allowOverwrite=false,
* appendNumber=true,
* allowedTypes="image/jpeg,image/pjpeg,image/png,image/x-png"
* )
*/
class Photo
{
/**
* @var array
*
* @Gedmo\Translatable
* @ORM\Column(name="annotation", type="string", length=255, nullable=true)
*/
private $annotation;
/**
* @var string
*
* @Gedmo\UploadableFilePath
* @Assert\File(
* mimeTypes={"image/jpeg", "image/pjpeg", "image/png", "image/x-png"}
* )
* @ORM\Column(name="photo", type="string", length=255)
*/
private $photo;
И это моя часть контроллера:
if ($entity->getPhoto()) {
$uploadableManager = $this->get('stof_doctrine_extensions.uploadable.manager');
$uploadableManager->markEntityToUpload($entity, $entity->getPhoto());
}