в моем django
приложении, у меня есть страница index
, в которой перечислены некоторые сводные данные, которые являются динамическими (на основе некоторых пользовательских входных данных в db). Я закодировал, как показано нижеЗапись urlpattern в django для рендеринга изображения
views.py
def custom_render(request,context,template):
req_context=RequestContext(request,context)
return render_to_response(template,req_context)
@login_required
def index(request, template_name):
summary_info = get_summary(...)
return custom_render(request,{'summary':summary_info},template_name)
urls.py
urlpatterns=patterns('',
...
url(r'^$', 'myapp.views.index',dict(template_name = 'myapp/index.html'), name = 'home'),
...
Теперь я хочу, чтобы включить диаграмму изображение, формируемое Matplotlib на домашнем page..So, когда пользователь запрашивает URL-адрес указательной страницы, он может видеть как сводную информацию, так и диаграмму
Я написал index.html как ниже
{% extends "myapp/base.html" %}
....
<div id='summary'>
{# here display the summary #}
...
</div>
<div id='chart'>
<img class="chartimage"src="{% url myapp_render_chart %}"
alt="chart"
/>
</div>
мнение диаграмма
def render_chart(request):
data = get_data(request.user)
canvas = None
if data:
canvas = create_piechart(data)
response = HttpResponse(content_type = 'image/png')
if canvas:
canvas.print_png(response)
return response
import matplotlib.pyplot as plt
def create_piechart(data,chartsize=(16,16)):
...
figure = plt.figure(figsize = chartsize)
plt.pie(fracs, labels=labels, autopct='%1.1f%%', shadow=True)
canvas = FigureCanvas(figure)
plt.close(figure)
return canvas
Я не знаю, как я должен делать urlmapping.The URL r'^$',
уже сопоставляется с индексом page.But мне нужно создать url(...)
в urlpatterns
sothat зрения render_chart() связан с именем myapp_render_chart
и поэтому может быть вызван в теге {% url %}
. Может ли кто-нибудь помочь мне с этим?
спасибо Ciske, я сомневался в том, что regex url 'kick-ass-chart' никогда не будет использоваться. – damon