在管理命令中保存Django数据库中的图像

时间:2016-02-09 05:21:36

标签: python django django-manage.py

I've found out how to load images from the file system into Django,但你怎么把它们拿出来?

我已经弄清楚如何在管理命令中从数据库中获取内容,并且可以执行以下查询:

for m in my_models.objects.filter(get=some):
    image = m.image 
    # How do I copy this to another non-django location?

1 个答案:

答案 0 :(得分:2)

图像(或其他FileField s)实际上是存储在某个地方的常规文件(如文件系统或像S3这样的块存储)。假设您的文件驻留在服务器的文件系统上,您可以使用path属性获取原始文件路径,并使用Python shell实用程序将其复制到另一个位置:

import shutil

for m in my_models.objects.filter(get=some):
    image = m.image 
    shutil.copy(image.path, '/var/tmp/')