我正在使用带有 python 的 Flask 服务器。
我有一个整数pics_to_show。每次收到请求时,用户都会收到pics_to_show整数。并且pics_to_show递减 1。
pics_to_show是一个与所有网站用户共享的整数。我可以制作一个数据库来保存它,但我想要更简单和灵活的东西。有没有其他方法可以保存这个整数。
我制作了一个将此类变量保存在 JSON 文件中的类。
class GlobalSate:
def __init__(self, path_to_file):
self.path = path_to_file
try:
open(path_to_file)
except FileNotFoundError:
f = open(path_to_file, 'x')
f.write('{}')
def __getitem__(self, key):
file = self.load_file()
data = json.loads(file.read())
return data[key]
def __setitem__(self, key, value):
file = self.load_file()
data = json.loads(file.read())
data[key] = value
json.dump(data, open(self.path, 'w+'), indent=4)
def load_file(self):
return open(self.path, 'r+')
Run Code Online (Sandbox Code Playgroud)
这个类当然过于简化了。我在 中初始化一个实例__init__.py并将其导入所有路由文件(我使用的是 BluePrints)。
我的应用程序是线程化的,所以这个类可能不起作用......因为多个用户同时编辑数据。有人有其他解决方案吗?
注意:该g变量不起作用,因为数据是跨用户共享的,而不是requests …