Ich bin neu in Flask. Ich versuche, Download-Liste von/var/Verzeichnis-Dateien zu machen, aber Ich kann keine Möglichkeit finden, diesen Link zu machen. jede Datei könnte in diesem Verzeichnis sein, so dass tempfile dieses Problem lösen könnte. ich kenne die Datei nicht, so kann ich nicht Datei in Flask-Verzeichnis kopieren, könnte mir jemand sagen, wie kann ich Download-Link für Datei so machen?Datei von einem anderen Verzeichnis herunterladen In Flask
1
A
Antwort
2
Ich habe nie Flasche verwendet, aber habe etwas Erfahrung mit Django. Wenn Sie sich die flask docs (rendering_templates) ansehen, müssen Sie eine Kontextvariable an die Renderfunktion übergeben und sie dann zur jinja Vorlage hinzufügen.
Ich würde auch vorschlagen, einen anderen Ordner zu benennen, um Downloads zu platzieren, da Benutzer Zugriff auf Ihren/var/Ordner geben können, ein Sicherheitsrisiko darstellen.
Siehe unten:
import os
from flask import Flask, render_template
app = Flask(__name__)
dloads_dir = '/var/www/mysite/downloads/'
dloads = os.listdir(dloads_dir).sort()
dloads_src = ['/downloads/{}'.format(i) for i in dloads]
@app.route('/Downloads')
def list_downloads():
return render_template('downloads.html', dloads=dloads, dloads_src=dloads_src)
dann in den HTML-Code (sollte ich sagen Jinja2) Vorlage:
<!doctype html>
<title>Hello from Flask</title>
{% for file in dloads %}
<a href="{{ dloads_src[loop.index0] }}" download>{{ file }}</a>
{% endfor %}
</html>
Here's where I found the loop.index method
(1) Edit: Feste mein schlechtes html
Verwandte Themen
- 1. Flask Eine Datei herunterladen
- 2. Datei in benutzerdefiniertes Verzeichnis herunterladen
- 3. JAR-Datei läuft von einem anderen Verzeichnis?
- 4. Flask Router von anderen Datei
- 5. Datei in einem anderen Verzeichnis öffnen (Python)
- 6. Force-Datei Herunterladen von bestimmtem Verzeichnis .htaccess
- 7. Soll wget nur die neueste Datei in einem Verzeichnis herunterladen?
- 8. Hochladen und Herunterladen von Dateien mit Flask
- 9. PHP-Include-Datei aus einem anderen Verzeichnis
- 10. Anzeige Inhalt von Dateien in einem bestimmten Verzeichnis mit Flask
- 11. So extrahieren Sie die gezippte Datei in einem anderen Verzeichnis
- 12. Verzeichnis von einem Zweig zu einem anderen Verzeichnis eines anderen Zweigs in Git
- 13. Kopieren einer Datei aus einem Verzeichnis zu einem anderen
- 14. Wie temporäre URL herunterladen in Flask?
- 15. Wie benötige ich eine Datei in einem anderen Verzeichnis?
- 16. Link zu einer anderen HTML-Datei in einem Verzeichnis
- 17. Befehl in einem anderen Verzeichnis ausführen
- 18. wie Datei oder Verzeichnis von einem bestimmten Verzeichnis in PHP
- 19. Ordner von GCS in lokales Verzeichnis herunterladen
- 20. Kopieren von Datei aus einem Verzeichnis von einem Ordner in einen anderen mit sas
- 21. werden Dateien rekursiv von einem Verzeichnis zu einem anderen führen zu Änderungen in einem Verzeichnis in einem anderen Verzeichnis Dateien auch widerspiegeln?
- 22. CSV-Datei herunterladen von einem ipython Notebook
- 23. Rezeptdatei in einem anderen Verzeichnis installieren
- 24. Powershell: Verschieben Sie Datei von einem Verzeichnis zu einem anderen, basierend auf Zeichenfolge innerhalb der Datei
- 25. Flask + Nginx, aber Datei herunterladen Fehler (Dateigröße: 0kb)
- 26. Linux-Anwendung zum Herunterladen von Anlagen zu einem Verzeichnis?
- 27. Wie html-Datei aus einem anderen Verzeichnis als ActionResult
- 28. Keine solche Datei oder ein Verzeichnis mit Flask
- 29. Wie importiere ich die .py-Datei aus einem anderen Verzeichnis?
- 30. Erstellen und Herunterladen einer CSV-Datei aus einer Flask-Ansicht
Sehen Sie sich [send_file()] (http://flask.pocoo.org/docs/0.12/api/#flask.send_file) und [send_from_directory()] (http: // flash) an k.pooco.org/docs/0.12/api/#flask.send_from_directory) – MrLeeh
vielen Dank. Ich versuche send_file, aber ich kann es nicht funktionieren, aber nach Ihrem Vorschlag benutze ich send_from_directory und das funktionierte wie ich will. Danke vielmals – Rome