Ich rendere ein Bild in Django (1.9) Python 2.7.10. Es funktioniert gut.Django Unicode-Fehler beim Rendern von Bild über Vorlage
views.py
canvas = FigureCanvas(fig)
response = django.http.HttpResponse(content_type='image/png')
canvas.print_png(response)
plt.close(fig)
return response
Der obige Code immer veröffentlicht das Bild in Browser von Anfang an der Reihe. Ich möchte das Bild an einem neuen Ort im Browser positionieren. Ich habe versucht, die Antwortvariable in einer Vorlage zu übergeben.
views.py
canvas = FigureCanvas(fig)
response = django.http.HttpResponse(content_type='image/png')
canvas.print_png(response)
plt.close(fig)
context = {'response': response}
return render(request, 'index.html', context)
index.html
<div align="center" style="text-align:center;">{{ response }} </div>
Das Problem hier ist, erhalte ich die Fehlermeldung:
'utf8' codec can't decode byte 0x89 in position 27: invalid start byte. You passed in HttpResponse status_code=200, "image/png" (class 'django.http.response.HttpResponse')
mir Fehler „Tag Start ist nicht geschlossen“ geben was url hier ist, ist es eine Variable? – utkarsh
URL ist der Django TemplateTag: https://docs.djangoproject.com/en/1.9/ref/templates/builtins/#url - für den Fehler - überprüfen Sie bitte die Interpunktion und wihte Leerzeichen in Ihrer Vorlage. Der Code sollte wie angegeben funktionieren. –
Vielen Dank für Hilfe, aber Bild zeigt noch nicht ... eine leere Seite – utkarsh