Flask 连接 Peewee 只在 res 上获取新数据

2024-04-25 11:36:25 发布

您现在位置:Python中文网/ 问答频道 /正文

我的Flask+Peewee应用程序遇到了一个非常奇怪的问题。你知道吗

我有一个webapp,可以将数据插入MySQL数据库。你知道吗

我的Flask应用程序也通过peewee连接到那个数据库。你知道吗

问题是,当我用webapp插入一些东西时,如果我对Flask app中的数据库进行选择,它将返回Flask app开始时可用的数据。要使用相同的Select获取新数据,我需要重新启动Flask服务器服务以获取新数据。你知道吗

有人知道发生了什么吗?你知道吗

更新

我发现了问题。它与皮维没有直接关系,但与烧瓶有关。你知道吗

我有这样的想法:

def some_method(id, user_id, date_from = datetime.now(), limit = 50):

当我这样做的时候,来自的日期被设置为编译的日期时间。之后,所有使用它的请求总是使用该日期和时间。你知道吗

更改为:

def some_method(id, user_id, date_from = None, limit = 50):

   if (date_from is None):
     date_from = datetime.now()

它开始工作了。你知道吗

我把这个分享给其他像我这样可能有同样问题的人。你知道吗


Tags: 数据fromid数据库app应用程序flaskdatetime
1条回答
网友
1楼 · 发布于 2024-04-25 11:36:25

这是web应用程序的预期行为。HTTP是一种无状态协议,这意味着您的Web应用程序的前端无法知道后端的状态是否已更改,除非它发出新的请求。因此,只有在重新启动Flask应用程序后,您的后端更改才可见。根据您的代码,您可能还可以通过刷新浏览器来查看更改。你知道吗

如果您想在不重新启动/刷新的情况下立即看到更改,请学习如何使用Javascript查询更改并更新前端DOM。您可以从学习jquery或React/Vue/Angular这样的现代框架开始。你知道吗

相关问题 更多 >