Hi,
möglicherweise bin ich einfach nicht in der Lage die richtigen Begriffe bei Google einzugeben, aber ich stehe gerade vor dem Problem eine Grafik in ein Flask template einbauen zu wollen.
Der Body des HTML sieht so aus:
<body>
<h1>R2N1 Status Display</h1>
<img src="button1.gif" alt="Patrouille">
<a href="/patrol">Patrouille</a><br><br>
</body>
Die Grafik ist in dem Verzeichnis templates abgelegt.
Nach ein wenig Recherche habe ich gelesen, das es auch noch ein Verzeichnis static gibt. Habe ich ebenfalls angelegt und das Bild dort reinkopiert.
Hilft aber nicht.
in welches Verzeichnis müssen denn Bilder rein, damit Flask sie findet?
Meine Struktur ist jetzt so:
/pi
-/templates
-/static
Frohes neues Jahr
Florian
Flask, Grafik einbinden
Moin DasIch,
tut mir Leid. Aber das verstehe ich noch nicht.
Das Python prg sieht grob so aus:
Seite wird angezeigt. Auch das 'Patrol' funktioniert. Nur die Grafik nicht.
Muss ich noch irgendwo angeben, wo andere Inhalte liegen?
Hab mal nach URL_FOR gegoogelt, verstehe das aber nicht so, als wenn man damit einen Pfad für weitere Inhalte angeben kann.
Gruß
Florian
tut mir Leid. Aber das verstehe ich noch nicht.
Das Python prg sieht grob so aus:
Code: Alles auswählen
@app.route("/")
def main():
tTime = (time.strftime("%d.%m.%Y %H:%M:%S"))
message = tTime
templateData = {
'message' : message,
}
return render_template('main.html', **templateData)
@app.route("/patrol")
def patrol():
os.mknod("patrol")
tTime = (time.strftime("%d.%m.%Y %H:%M:%S"))
message = tTime + " Patrol Mode"
templateData = {
'message' : message,
}
return render_template('main.html', **templateData)
if __name__ == "__main__":
app.run(host='0.0.0.0', port=80, debug=True)
print "(Start)"
Seite wird angezeigt. Auch das 'Patrol' funktioniert. Nur die Grafik nicht.
Muss ich noch irgendwo angeben, wo andere Inhalte liegen?
Hab mal nach URL_FOR gegoogelt, verstehe das aber nicht so, als wenn man damit einen Pfad für weitere Inhalte angeben kann.
Gruß
Florian
Zuletzt geändert von Anonymous am Montag 4. Januar 2016, 21:42, insgesamt 1-mal geändert.
Grund: Quelltext in Python-Codebox-Tags gesetzt.
Grund: Quelltext in Python-Codebox-Tags gesetzt.
@wasserflo: statische Inhalte werden von Flask automatisch bereitgestellt, wenn sie im ./static Ordner liegen. Dazu muß man aber auch die richtige URL angeben:
Code: Alles auswählen
<body>
<h1>R2N1 Status Display</h1>
<img src="{{ url_for('static', filename='button1.gif') }}" alt="Patrouille">
<a href="/patrol">Patrouille</a><br><br>
</body>