Django - 如何从视图中将文件保存到STATIC_ROOT?

时间:2018-01-12 06:27:33

标签: python django pillow

我制作了一个Django应用程序,它从表单中获取参数并使用Pillow制作图像。

views.py:

file_name = "{}.png".format(random.randint(1, 255))
image1.save(file_name)

非常简单的东西,对吗?现在,当我尝试使用HttpResponse渲染该图像时:

return HttpResponse("<img src='" +file_name + "' alt='image here'>")
显然,它会引发错误。你能告诉我怎么做才能正确保存并在HttpResponse中显示吗?

的Django == 1.11.8

枕== 5.0.0

Python 3.6.2

谢谢!

1 个答案:

答案 0 :(得分:0)

首先,您应该保存到MEDIA_ROOT。其次,你需要在你的img src中放一个实际的URL - 即相对于MEDIA_URL - 而不仅仅是文件名。第三,你需要在该URL上提供文件服务。