Servieren Bild mit Kolben
Ich habe ein Programm das generiert ein Bild. Jetzt will ich mit Flask machen dieses Bild für andere Benutzer verfügbar, aber ich kann nicht anzeigen, dieses Bild mit dem folgenden code:
#!/usr/bin/python2
#coding: utf-8
from flask import *
app = Flask(__name__)
#app.run(host='0.0.0.0')
@app.route('/')
def index():
return render_template('hello.html')
if __name__ == '__main__':
app.run(debug=True,host='0.0.0.0')
Meine Vorlage hello.html ist:
<!doctype html>
<title>Hello from Flask</title>
<h1>Hello World!</h1>
<img src="./weather-plot.png">
Wenn ich dieses Programm ausführen und besuchen Sie die Seite, ich sehe dies:
192.168.0.61 - - [10/Jul/2013 10:22:09] "GET /HTTP/1.1" 200 -
192.168.0.61 - - [10/Jul/2013 10:22:09] "GET /weather-plot.png HTTP/1.1" 200 -
Und in meinem browser sehe ich die Titel, nicht aber das Bild. Was ist falsch?
By the way, gibt es eine bessere Methode zeigen Sie ein Bild ohne was dazu? Vielleicht habe ich nicht um eine Vorlage zu verwenden?
- HM, ich denke, der Titel-tag ist missplaced. Es ist ein Teil der header und nicht in den body-Abschnitt.
- Die tags für die
head
undbody
Elemente sind optional, so gibt es nichts falsch mit der das obige HTML.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sind Sie sicher, das Bild ist in der Tat in der Lage
./
, also in der Wurzel von Ihrem Projekt?In jedem Fall ist es besser, Flask ' s
url_for()
Methode, um zu bestimmen, URLs (siehe http://flask.pocoo.org/docs/api/#flask.url_for) stellt Dies sicher, dass, wenn Sie Dinge bewegen, die URLs werden nicht umgebrochen.url_for
Methode und es hat mir geholfen.