flask server static files code example

Example 1: flask make static directory

from flask import Flask, send_from_directory

app = Flask(__name__)

@app.route("/static/<path:path>")
def static_dir(path):
    return send_from_directory("static", path)

if __name__ == "__main__":
    app.run()

Example 2: css and js on flask

<!-- Put in HTML file--> 

<!-- 
JS
parent_dir is reletive to Flask app.py dir
meaning: /main/app.py
		 /main/parent_dir/file.js
-->
<script src="{{url_for('parent_dir', filename='file.js')}}"></script>

<!-- 
CSS
parent_dir is reletive to Flask app.py dir
meaning: /main/app.py
		 /main/parent_dir/file.css
-->
        <link href="{{ url_for("parent_dir",filename="file.css")  }}" rel="stylesheet">

Example 3: how to send image to template thats not in static flask

from config import directory_to_image_folder

#first create the route
@app.route('/uploads/<path:filename>')
def download_file(filename):
    return send_from_directory(directory_to_image_folder, filename, as_attachment=True)

#add this to the template inside of an image tag
<img width="100%" height="100%" src="{{ url_for('download_file', filename='name_of_image.extension') }}">