Tengo archivos almacenados en un MongoDB usando GridFS. Necesito eliminar algunos de esos archivos por ID, desde el shell de JavaScript. Necesito eliminar un solo archivo usando su identificación. Pensé que podría hacer esto:MongoDB eliminar objetos GridFS del shell
db.fs.files.remove({_id: my_id});
Esto funciona hasta cierto punto; elimina el archivo de la colección fs.files
pero no elimina los fragmentos de la colección fs.chunks
. La razón por la que lo sé es porque verifico la longitud de ambas colecciones antes y después en RockMongo.
Podría ir a través de los fragmentos y eliminar los que se refieren a ese archivo, pero ¿hay una forma mejor e integrada de hacerlo?
Ah, ya veo. Tristemente, no puedo usar mongofiles porque solo tengo el ID del archivo que quiero eliminar. ¿Prevé algún problema al eliminar los fragmentos correspondientes? –
¿Necesita hacer esto a través del caparazón? ¿Por qué no conectarse con un controlador en el idioma de su elección? Y no, hasta donde sé, estaría bien hacer algo como 'db.fs.chunks.remove ({files_id: my_id});' y luego 'db.fs.files.remove ({_ id: my_id}) ; ' –
Hubiera preferido hacerlo desde el shell, pero usaré un lenguaje con un controlador. ¡Gracias! –