Найти - Пользователи
Полная версия: Как в Django сгенерировать и вывести картинку?
Начало » Django » Как в Django сгенерировать и вывести картинку?
1
freeman4217
Помогоите разобраться с динамическим созданием изображений в Django. Пишу сайт, на одной из страниц которого необходимо показать график (график должен создаваться динамически, т.к. для каждого пользователя он свой и его вид зависит от времени). Немного погуглив нашел пример кода, который создает изображение и выводит его:

#Here’s a simple django view which creates a PIL image on the fly, and returns it as a PNG image:

from django.http import HttpResponse
from PIL import Image

import random
INK = "red", "blue", "green", "yellow"

def image(request):

# ... create/load image here ...
image = Image.new("RGB", (800, 600), random.choice(INK))

# serialize to HTTP response
response = HttpResponse(mimetype="image/png")
image.save(response, "PNG")
return response
Пример работает, но он создает ТОЛЬКО изображение, а мне нужна полноценная страница с подключенным шаблоном
{% extends "base.html" %}
{% block content %}
<h1>{{ header }}<h1>
<p>{{ text }}</p>
<img {{ image }}>
{% endblock %}
Как в такой шаблон правильно передать созданное изображение и другие переменные?
pill
Создавайте изображение, сохраняйте в какое-нибудь укромное местечко доступное из под статики, а в шаблон передавайте - путь куда сохранили…?

Или можно модельку сделать с ImageField передавать картинку туда, А в шаблоне потом использовать instance.image.url

Либо какое-то сторонее решение:
Может что из этого подойдет -
http://code.google.com/intl/ru-RU/apis/chart/
https://github.com/jacobian/django-googlecharts
http://code.google.com/p/django-graphs/
http://stackoverflow.com/questions/609944/charts-in-django-web-applications
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB