删除附件后删除文件

想象一下,有写文章的应用程序,文章会有一些图片,文件等。当然,当文章删除,附加的文件也应该删除。 但我该怎么做?

有写表单,在/news/write 。 当我上传一些图片时,图片将在后台发送到服务器,(通过ajax post)。 这个图片会有一些名字,比如a0bb880c5a06b5b9dc238f84cfda6861 ,它会被附加在编辑器中<img src="/uploads/a0bb880c5a06b5b9dc238f84cfda6861">

我没有完成文章,但在服务器的图片。 最后我提交post,里面有图片,后来几个小时,我想删除它。 删除文章itselt没有问题,但picutre仍然在服务器。 我也想删除它。

我想有些方法,结论是,我应该把文章和它的图片结合起来。

  1. 映射文件和文章 – 但我该怎么做? 文章不存在,所以我不知道文章的ID。

  2. 当文章保存,parsing内容,并拿起<img>标签的src属性,并连接它。 我应该这样做吗? 有没有更简单的方法?

  3. 或者定期删除文件…?

您需要与您的文章和图像文件build立联系才能删除文章时删除图像文件。

你也可以通过文章的内容进行parsing,find图片并删除它们,但是我认为这样做不好。

相反,试试这个。 保存文章时,可以将图像文件保存在文章文档的字段中。

 db.articles.insert( { title: "article title", body: 'article body', images: [{imageFileName: 'xyz.jpg'}, {imageFileName: 'xyz.png'}...] } ); 

现在,当您删除文章时,您将有可以迭代的图像字段,并删除图像文件。