diff --git a/mypy.ini b/mypy.ini index 132059dca299ae9e9433f95c3ff3002b61ed736d..9c56abd8fdb03f282acd2c5ce46b0bfd3ba7aa55 100644 --- a/mypy.ini +++ b/mypy.ini @@ -1,2 +1,5 @@ [mypy] files = whatformat/**/*.py + +[mypy-flask_caching.*] +ignore_missing_imports = True diff --git a/requirements.txt b/requirements.txt index 230e7b2028a77d12ce744934d6e249e11e7d133a..4352144b61f56010ac9170c73d2b632921b7d3aa 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,2 +1,3 @@ python-dateutil==2.8.1 Flask==1.1.1 +Flask-Caching==1.8.0 diff --git a/whatformat/app.py b/whatformat/app.py index 042a9e035d25ba1fcb56a751fde42838cb129c57..c544cbdac6126986aa05b3fe3a524bee2c2746bb 100644 --- a/whatformat/app.py +++ b/whatformat/app.py @@ -1,13 +1,16 @@ """Flask app for What Format.""" from flask import Flask, jsonify, render_template, request +from flask_caching import Cache from whatformat.util import whatdateformat # pylint: disable=invalid-name ; These variables are standard for Flask. app = Flask(__name__) +cache = Cache(app, config={'CACHE_TYPE': 'simple'}) @app.route('/') +@cache.cached(query_string=True) def landing(): """Render the homepage.""" date_string = request.args.get('date') @@ -15,6 +18,7 @@ def landing(): @app.route('/date') +@cache.cached(query_string=True) def date(): """Return date format strings matching date_string.""" date_string = request.args.get('date')