1
私は以下の3つのファイルを持っています。Python Flaskキャッシュのクリアが機能しない
app.py
from flask_restful import Api
from lib import globals
from flask import Flask
from flask.ext.cache import Cache
globals.algos_app = Flask(__name__)
#cache in file system
globals.cache = Cache(globals.algos_app, config={'CACHE_TYPE': 'filesystem', 'CACHE_DIR': '/tmp'})
api = Api(globals.algos_app)
api.add_resource(Test, '/test')
if __name__ == '__main__':
globals.algos_app.run(host='0.0.0.0', debug=True)
globals.py
global algos_app
global cache
Test.py
from flask_restful import Resource
from lib import globals
from flask_restful import Resource
import time
class Test(Resource):
def get(self):
return self.someMethod()
def post(self):
globals.cache.clear()
return self.someMethod()
@globals.cache.cached()
def someMethod(self):
return str(time.ctime())
私はキャッシュからの値に必要GET
方法を持っているとPOST
キャッシュを最初にクリアすることによってキャッシュを更新する方法。
しかし、私はGET
またはPOST
メソッドを呼び出しても、常にキャッシュから値を取得します。
PS:現時点では開発サーバーでテストしていますが、後でWSGIを使用して展開する必要があります。