diff --git a/partials.py b/partials.py new file mode 100644 index 0000000..f4711be --- /dev/null +++ b/partials.py @@ -0,0 +1,17 @@ +from flask import Blueprint, render_template, send_from_directory +from jinja2 import TemplateNotFound +from datetime import datetime + +partials = Blueprint('partials', __name__, template_folder='partials') + +@partials.route('/', defaults={'page': 'index'}) +@partials.route('/') +def show(page): + try: + return render_template(f'{page}.html') + except TemplateNotFound: + return send_from_directory('dist', '404.html'), 404 + +@partials.route('feed') +def feed(): + return render_template(f'feed.html', date=datetime.now().strftime('%B %d, %Y, %H:%M:%S')) diff --git a/partials/feed.html b/partials/feed.html new file mode 100644 index 0000000..2f1c4f6 --- /dev/null +++ b/partials/feed.html @@ -0,0 +1 @@ +

Hey! Today is {{ date }}. Nothing to see here. I'm just currently experimenting on using server-rendered dynamic partials in an iframe.

diff --git a/web.py b/web.py index cdf4cdf..101d6e0 100755 --- a/web.py +++ b/web.py @@ -1,5 +1,9 @@ from flask import Flask, send_from_directory +from partials import partials +import datetime + app = Flask(__name__) +app.register_blueprint(partials, url_prefix='/p') @app.route('/') def home(): @@ -16,6 +20,5 @@ def dist(path): def not_found(e): return send_from_directory('dist', '404.html'), 404 - if __name__ == '__main__': app.run(host='0.0.0.0')