本文整理汇总了Python中edx_django_utils.cache.RequestCache.get_cached_response方法的典型用法代码示例。如果您正苦于以下问题:Python RequestCache.get_cached_response方法的具体用法?Python RequestCache.get_cached_response怎么用?Python RequestCache.get_cached_response使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类edx_django_utils.cache.RequestCache
的用法示例。
在下文中一共展示了RequestCache.get_cached_response方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: _decorator
# 需要导入模块: from edx_django_utils.cache import RequestCache [as 别名]
# 或者: from edx_django_utils.cache.RequestCache import get_cached_response [as 别名]
def _decorator(*args, **kwargs):
"""
Arguments:
args, kwargs: values passed into the wrapped function
"""
# Check to see if we have a result in cache. If not, invoke our wrapped
# function. Cache and return the result to the caller.
if request_cache_getter:
request_cache = request_cache_getter(args, kwargs)
else:
request_cache = RequestCache(namespace)
if request_cache:
cache_key = _func_call_cache_key(f, arg_map_function, *args, **kwargs)
cached_response = request_cache.get_cached_response(cache_key)
if cached_response.is_found:
return cached_response.value
result = f(*args, **kwargs)
if request_cache:
request_cache.set(cache_key, result)
return result