使用python删除docker conatiner中的文件夹

使用python删除docker conatiner中的文件夹,python,django,docker,Python,Django,Docker,我有这个函数,当Django Admin中的行被删除时,它会删除给定的目录。在Django Admin上完成后,该行已成功删除,但目录仍然存在 型号.py from django.db import models from django.conf import settings import git, os, shutil class DIR (models.Model): username = models.CharField(max_length=39) repositor

我有这个函数,当Django Admin中的行被删除时,它会删除给定的目录。在Django Admin上完成后,该行已成功删除,但目录仍然存在

型号.py

from django.db import models
from django.conf import settings
import git, os, shutil

class DIR (models.Model):
    username = models.CharField(max_length=39)
    repository = models.CharField(max_length=100)

    def get_dir_name(self):
        return os.path.join(settings.PLAYBOOK_DIR, self.repository)

    def rm_repository(self):
        DIR_NAME = self.get_dir_name()
        shutil.rmtree(os.path.join(DIR_NAME))

    def delete(self):
        self.rm_repository(self):
        super(DIR, self).delete(*args, **kwargs)
但是当我尝试使用shell时,目录和内容会被删除

$ docker exec -it <container> python manage.py shell

>>> import os, git, shutil
>>> DIR_NAME = '/opt/app/john'
>>> shutil.rmtree(DIR_NAME)
$docker exec-it python manage.py shell
>>>导入操作系统、git、shutil
>>>目录名称='/opt/app/john'
>>>shutil.rmtree(目录名)
贝壳和贝壳的区别是什么。没有给出任何错误,只是不确定为什么在Django管理员的
delete
中这样做不起作用。在pythonshell上测试时,函数delete()可以正常工作吗?

显然,函数delete()不适用于批量删除。
这就是我在Django Admin中所做的。

导入os.remove(文件名)
@rkatkam不尝试只删除一个文件。试图删除整个目录