1
Flask 캐시 모듈을 사용하고 있고 런타임 오류가있는 경우 캐시 된보기를 원하지 않는 문제가 있습니다.Flask보기에서 오류가 발생하는 경우 redis 캐시 객체를 무효화하거나 삭제하는 방법
아무에게도 조언을 줄 수 있습니까?
다음은 내가 달성하고자하는 것입니다.
from flask import Flask
from flask.ext.cache import Cache
app = Flask(__name__)
mycache = Cache()
mycache.init_app(app)
@mycache.cached()
@app.route('/myview')
def process_view():
try:
return get_something()
except:
return print_error_and_no_cache_this_view()
오류가있는 경우 어떻게이보기를 캐시하지 않을 것인가에 대한 의견이 있으십니까?
당신이 \ @cached에 대한 주석에서 무엇을 의미합니까 것은 @route하지만 다음의 예에서 그들이 \ 전에 가야합니다 다른 길은? – Andrew
@Andrew - 미안하지만, 나는'@cached'가 소스 순서가 아닌 * 실행 * 순서에서'@ 경로 '앞에 올 필요가 있다는 것을 의미했습니다. 데코레이터는 가장 안쪽까지 실행되므로 함수에 가장 가까운 것이 실행되고 그 다음에는 위의 것이 실행되고 그 다음에는 위의 실행이 차례로 수행됩니다. 기본적으로, 당신은 당신의 코드가 다음과 같이하고 싶어한다 : process_view = mycache.cached (app.route (process_view -> code))보다는'process_view = app.route (mycache.cached (process_view -> code) ' –