Подавать динамически сгенерированное изображение с Django

Как мне обслуживать динамически генерируемое изображение в Django?

У меня есть тег HTML

<html>
...
    <img src="images/dynamic_chart.png" />
...
</html>

связан с этим обработчиком запросов, который создает образ в памяти

def chart(request):
    img = Image.new("RGB", (300,300), "#FFFFFF")
    data = [(i,randint(100,200)) for i in range(0,300,10)]
    draw = ImageDraw.Draw(img)
    draw.polygon(data, fill="#000000")
    # now what?
    return HttpResponse(output)

Я также планирую изменить запросы на AJAX и добавить какой-то механизм кэширования, но, насколько я понимаю, это не повлияет на эту часть решения.

Ответы на вопрос(2)

амом Django, но я наткнулся на проект в Google Code, который может быть вам полезен:

Джанго динамическим медиа-обслуживание

 pufferfish06 июл. 2009 г., 17:31
Хорошая ссылка, может пригодиться, когда я доберусь до стадии кэширования
Решение Вопроса

что вы используете PIL (Python Imaging Library). Вам нужно заменить последнюю строку на (например, если вы хотите разместить изображение в формате PNG):

response = HttpResponse(mimetype="image/png")
img.save(response, "PNG")
return response

УвидетьВот для дополнительной информации.

 27 мар. 2017 г., 01:20
используйте content_type вместо mime-типа, если вы используете Django 1.10 +
 pufferfish02 июл. 2009 г., 16:38
Я использую PIL для этого примера, но, вероятно, собираюсь использовать другие библиотеки, такие как matplotlib. Должно работать тоже, хотя.

Ваш ответ на вопрос