Vichuploaderbundle: ¿Cómo eliminar un archivo (no eliminar el objeto de la entidad y no sobrescribir con otro archivo)?

Creado en 16 oct. 2014  ·  6Comentarios  ·  Fuente: dustin10/VichUploaderBundle

Hola,

Estoy tratando de averiguar cómo eliminar simplemente un archivo adjunto a una entidad. No quiero eliminar todo el objeto de la entidad y tampoco quiero reemplazar el archivo con otro archivo. Simplemente elimine el archivo. Busqué en la documentación y probé en Google, pero no encontré nada útil. También intenté establecer la variable de archivo del objeto de entidad en NULL y persistir la entidad. Pero esto no eliminó el archivo físico.

Cualquier sugerencia es muy apreciada.

Mejor,
Andreas

Support

Comentario más útil

Creo que este comportamiento de no eliminar el archivo físico cuando la variable de archivo de un objeto de entidad se establece como nula es más bien un error o una característica que falta. Creo que con

delete_on_update: true

el oyente debe capturar la configuración de la variable en nulo y el archivo debe eliminarse automáticamente.

Todos 6 comentarios

Publiqué demasiado rápido. Resolví esto con el siguiente código:

$this->get('vich_uploader.storage')->remove($entity, 'file_mapping');
$entity->setFile(null);
$entity->setFileName(null);

Seguido de la persistencia de la entidad.

Cierro este problema entonces :)

Creo que este comportamiento de no eliminar el archivo físico cuando la variable de archivo de un objeto de entidad se establece como nula es más bien un error o una característica que falta. Creo que con

delete_on_update: true

el oyente debe capturar la configuración de la variable en nulo y el archivo debe eliminarse automáticamente.

Esto debería mencionarse en alguna parte de la documentación :-)

El paquete evolucionó y la forma correcta de eliminar un archivo "manualmente" ahora es: $this->get('vich_uploader.upload_handler')->remove($entity, 'fieldName');

La inyección de vich_uploader.upload_handler rompe la abstracción. Considere implementar esto:

el oyente debe capturar la configuración de la variable en nulo y el archivo debe eliminarse automáticamente.

¿Fue útil esta página
0 / 5 - 0 calificaciones

Temas relacionados

nobady90 picture nobady90  ·  3Comentarios

WassabiVl picture WassabiVl  ·  3Comentarios

andrea-daru picture andrea-daru  ·  3Comentarios

gonzalovilaseca picture gonzalovilaseca  ·  7Comentarios

seddighi78 picture seddighi78  ·  4Comentarios