检测 Flask 应用程序是否在本地运行

Gan*_*ham 5 python flask

我希望我的代码的某些部分在本地运行时不运行。

这是因为,我在本地安装某些依赖项时遇到问题,无法运行代码。

具体来说,memcache 在本地对我不起作用。

@app.route('/some_url_route/')
@cache.cached(timeout=2000) #ignore this locally
def show_a_page():
Run Code Online (Sandbox Code Playgroud)

在本地运行时,应用程序如何以某种方式忽略上面代码的缓存部分?

Ewa*_*wan 3

在我的代码中,我遵循 Django-esq 模型,并有一个主settings.py文件来保存所有设置。

在该文件中,DEBUG = True为您的本地环境(和False生产)放置我然后使用:

 from settings import DEBUG

 if DEBUG:
     # Do this as it's development
 else:
     # Do this as it's production
Run Code Online (Sandbox Code Playgroud)

因此,在您的cache装饰器中包含类似的行,仅在以下情况下检查 memcached:DEBUG=False

然后,您可以将所有这些设置加载到 Flask 设置中,如配置文档中详述。