gpt4 book ai didi

python - WebApp 只需要第一次做一些事情,该逻辑放在哪里? Flask 或 django

转载 作者:太空宇宙 更新时间:2023-11-03 19:24:42 25 4
gpt4 key购买 nike

我正在开发的网络应用程序需要执行首次设置或初始化,

哪里是放置该逻辑的好地方?我不想在每个请求上或在任何请求之前都执行配置/设置是否存在的检查,因为这样的性能不高。

我正在考虑在应用程序启动时检查是否有合理的配置,然后将/的默认路由更改为设置/设置页面,然后将其更改回来。但这有点像 self 改变代码。

这是必需的,因为网络应用程序需要设置,然后根据这些设置来索引内容,这需要一些时间。所以设置完成后,我还需要等待一段时间,直到索引完成。因此,即使在进行设置/设置之后,后续的任何请求都需要看到“等待索引”消息。

我正在使用 Flask,但我认为这也与 django 相关。

编辑:我现在这样想;

启动时,检查 appconfig.py 中的 MY_SETTINGS(如果不存在)从 config.py 添加默认值并在 app.config 上放置一个 status=firstrun 对象将/路径更改为设置 View 功能。然后,设置 View 函数将检查 app.config.status 对象并执行用户输入后根据需要进行设置,当设置没问题时,
删除 app.config.status 或将其更改为“索引”,然后我可以使用 before_request 函数来检查 app.config.status 只是为了闪现一条消息。或者我可以使用flask.g而不是app.config来存储状态?

最佳答案

正确的方法是创建 CLI 脚本,最好通过 Flask-Script如果您使用 Flask(在 Django 中,它将是默认的 manage.py ,您也可以在其中轻松添加自定义命令)并定义一个函数,例如 init安装:

from flaskext.script import Manager
from ... import app
manager = Manager(app)
@manager.command
def init():
"""Initialize the application"""
# your code here

然后您在文档中提到它,并且可以轻松地假设它在访问 Web 应用程序本身时已运行。

关于python - WebApp 只需要第一次做一些事情,该逻辑放在哪里? Flask 或 django,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8614478/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com