问题标签 [flask-cache]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
5672 浏览

flask - 如何配置具有无限超时的 Flask-Cache

在 Flask-Cache 文档中,所有示例都使用有限超时。

我不想在应用程序运行时刷新缓存。这是可能的,如果可以,我该怎么做?

0 投票
1 回答
890 浏览

python - Heroku 导入错误

我的 requirements.txt 文件似乎不起作用

我的文件中的其中一行指出:

但是,为什么我尝试使用 Flask-Cache 时出现以下错误:

有想法该怎么解决这个吗?

0 投票
1 回答
27051 浏览

python - 如何禁用 Flask-Cache 缓存

我在使用 Flask-Cache 时遇到问题。我需要通过定义用户可以设置启用或禁用缓存的配置变量来根据需要进行缓存。

我将 Flask-Cache 用于缓存目的,如

并使用缓存(在views.py中)作为

在使用 Flask-Cache 时,我没有得到正确的方法来启用/禁用缓存。是否有一种标准方法可以完全启用/禁用缓存行为。

0 投票
1 回答
1135 浏览

python - 我们可以在缓存函数中为除非函数指定参数吗(在 Flask-Cache 中)

Flask-Cache文档中,缓存函数采用以下参数 - 超时,key_prefix,除非。除非被描述为

  • 除非——默认无。
    除非此可调用对象为真,否则缓存将始终执行缓存设施。这将完全绕过缓存。

有没有办法将参数传递给除非函数,通过它我们可以动态地知道是否应用缓存。

0 投票
1 回答
933 浏览

python - 如何在 Flask-Cache 中缓存时提供 key_prefix、变量值

我们可以将任何视图/非视图函数缓存为

我们可以给 key_prefix 一些变量值吗?假设,我将一个函数缓存为

我们可以给 key_prefix 作为我们在函数中获得的相同参数吗?如果不是参数,那么以任何适当的方式至少有一些其他变量。

0 投票
1 回答
1508 浏览

python - 如何缓存/记忆我的 SQLAlchemy 函数?

我正在使用 Flask-OAuthlib 并想使用 Flask-Cache 进行一些缓存/记忆。我在视图上设置了缓存,但在缓存此函数时遇到了问题:

第一次运行该函数(尚未缓存)它运行良好,但是当它从缓存中获取它时,某些东西会以某种方式搞砸并说它是一个无效的客户端。我不知道它是否不正确地缓存它,或者是否让 @oauth.clientgetter 装饰器以某种方式搞砸了缓存。没有缓存一切正常,客户端有效。我试图像这样移动函数,但得到相同的结果:

然后,在我看来,我有:

但这给出了相同的结果。我使用 redis 作为我的缓存后端,我拥有的键/值是:

获取 flask_cache_Pwd2uVDVikMYMDNB+gVWlW:

获取 flask_cache_api.models.Client.get_client_memver:

0 投票
1 回答
2220 浏览

python - 如果 Flask 视图中出现错误,如何使 redis 缓存对象无效或删除

我遇到了一个问题,我正在使用 Flask 缓存模块,如果出现运行时错误,我不希望缓存视图。

谁能建议如何做到这一点?

这是我想要实现的目标。

如果我有错误,关于如何停止缓存此视图的任何想法?

0 投票
1 回答
871 浏览

python - make unittest 测试几个路由的缓存状态

我正在尝试为几条路线编写单元测试。数据操作相当密集并且使服务器 CPU 受限,并且新数据的检索相当罕见。因此,我将烧瓶缓存用于@cache.memoize更密集的路线。

鉴于此,我想为两件事制作测试用例。

  1. 路由正在缓存。没有这个,操作数据将花费太长时间。
  2. 当我明确清除缓存时,数据将从静态数据中重新加载。没有这个,我的数据将变得陈旧。我将在每次检索新数据时清除缓存。

以下是我的单元测试的代码,并带有一些注释。

我的路线相当简单,并且倾向于遵循以下模式:

如何在单元测试中对路由的缓存状态做出准确的断言?

0 投票
2 回答
23358 浏览

python - 如何使用 Flask-Cache 和 Redis 缓存 SQL Alchemy 调用?

我有一个 Flask 应用程序,它从 Web 表单中获取参数,使用 SQL Alchemy 查询数据库并返回 Jinja 生成的 HTML,显示带有结果的表。我想缓存对数据库的调用。我查看了 Redis(使用 redis 作为 postgres 的 LRU 缓存),这导致我访问了http://pythonhosted.org/Flask-Cache/

现在我正在尝试使用 Redis + Flask-Cache 来缓存对数据库的调用。基于 Flask-Cache 文档,我似乎需要设置一个自定义 Redis 缓存。

从那里我需要类似的东西:

我有两个问题:

  1. 我要做什么argskwargs?这些是什么意思?如何使用 Flask-Cache 设置 Redis 缓存?

  2. 一旦设置了缓存,似乎我想以某种方式“记忆”调用数据库,这样如果方法获得相同的查询,它就会缓存输出。我该怎么做呢?我最好的猜测是将调用 SQL Alchemy 包装在一个方法中,然后可以给它 memoize 装饰器?这样,如果将两个相同的查询传递给该方法,Flask-Cache 将识别出这一点并返回适当的响应。我猜它看起来像这样:

    /li>

这似乎是 Redis + Flask + Flask-Cache + SQL Alchemy 的一个相当常见的用法,但我无法找到一个完整的示例来遵循。如果有人可以发布一个,那将非常有帮助——但对我和其他人来说。

0 投票
5 回答
10513 浏览

python - 如何在 Flask-Restful 中使用 Flask-Cache

如何在 Flask-Restful 中使用 Flask-Cache @cache.cached() 装饰器?例如,我有一个从 Resource 继承的类 Foo,而 Foo 有 get、post、put 和 delete 方法。

如何在 之后使缓存的结果无效POST