Flask Speicherort für txt files

Django, Flask, Bottle, WSGI, CGI…
Antworten
Phobit
User
Beiträge: 185
Registriert: Freitag 4. Mai 2018, 18:13

Hallo,
weiß hier wer wo Flask txt Datein "findet", wenn ich bei open() nicht den ganzen Pfad angebe? html pages werden ja in "templates" abgelegt, aber wo lege ich txt ab?
Mir egal, ob der Code schön ist oder nicht.
Hauptsache er funkt!
Sirius3
User
Beiträge: 18375
Registriert: Sonntag 21. Oktober 2012, 17:20

›open‹ findet keine Dateien, sondern geht, wie immer, vom aktuellen Arbeitsverzeichnis aus. Dass Flask da für html pages etwas „Magie” programmiert hat, ändert ja am Standardverhalten nichts.
Üblicherweise legt man Zusatzdateien relativ zur Python-Datei __file__ ab.
Phobit
User
Beiträge: 185
Registriert: Freitag 4. Mai 2018, 18:13

Also im selben Verzeichnis wie die .py? Weil dort heißt es immer FileNotFound...
Mir egal, ob der Code schön ist oder nicht.
Hauptsache er funkt!
Sirius3
User
Beiträge: 18375
Registriert: Sonntag 21. Oktober 2012, 17:20

Nein, relativ zum Arbeitsverzeichnis. Ich schrieb nur, dass man mit Hilfe von ›__file__‹ einen Pfad zusammenbauen kann, der Dateien relativ zur Python-Datei findet.
Benutzeravatar
__blackjack__
User
Beiträge: 14337
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

`Flask.open_resource()` statt `open()` wäre auch eine Option.
„Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it.“ — Brian W. Kernighan
Antworten