0
我有一個要求,其中一個用戶上傳文件到文件收集mongoengine如何複製文件
class File(Document):
user = ReferenceField(User)
file = FileField()
type = StringField(choices = ('project', 'uploads'))
然後,用戶可以提交文件進行驗收的項目。如果該文件被接受,它將被複制並存儲在Project集合中。
class Project(Document):
file = ReferenceField(File)
file = File.objects(id = id)
copy = File(user = current_user, file = file.file, type = 'project').save()
Project(file = copy).save()
然而,如果用戶決定清理他的上傳文件夾,
files = File.objects(user = current_user, type = 'uploads')
files.delete()
他是從去除已提交給項目集合文件阻止。避免這種情況的最好方法是什麼?有沒有辦法複製文件,使每個文件與集合中的條目具有1:1的對應關係?然後從集合中刪除文檔也會刪除文件。