python-如何在Django中通过类似应用程序的配置注册Flask蓝图?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python-如何在Django中通过类似应用程序的配置注册Flask蓝图?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1373字,纯文字阅读大概需要2分钟。
内容图文
![python-如何在Django中通过类似应用程序的配置注册Flask蓝图?](/upload/InfoBanner/zyjiaocheng/656/52343e7595d64a9ba0f4f90faaced18c.jpg)
如何像我在Django中的应用程序一样从配置中注册Flask蓝图?
我想在配置文件中定义蓝图,它将自动注册
#config.py
BLUEPRINTS = (
'news',
'files',
)
解决方法:
我实际上已经在一个临时命名为Hip Pocket的项目中草绘了类似的内容.它与@HighCat给出的答案基本相同,除了它使用Python的打包系统而不是config.py文件(尽管它可以扩展为从而是一个配置文件-最欢迎issues和pull requests.)
因此,在Hip Pocket中,您可以执行此操作(有关其工作方式,请参见hip_pocket.tasks):
from flask import Flask
from hip_pocket.tasks import autoload
app = Flask(__name__)
autoload(app)
autoload会走一个包(默认情况下名为“ apps”,尽管您可以通过传递关键字arg apps_package来更改它)以查找flask.blueprint对象以在应用程序上注册(默认情况下,它将在名为的模块中查找名为route的符号在找到的每个子包中路由,但这些默认值也可以更改.)您的文件夹布局可能如下所示:
+ you_app
. . . . __init__.py
. . . . app.py
. . . . + apps
. . . . __init__.py
. . . . routes.py # contains the declaration `routes = Blueprint(...)`
. . . . + news
. . . . __init__.py
. . . . routes.py # Ditto
. . . . some_module.py
. . . . + files
. . . . __init__.py
. . . . routes.py # Ditto
. . . . # etc.
或者,如果您想使用基于配置的加载器,则可以执行以下操作:
from flask import Flask
from werkzeug.utils import import_string
app = Flask(__name__)
app.config.from_object("your_app.config")
for tool_path in app.config["BLUEPRINTS"]:
tool = import_string(tool_path)
app.register_blueprint(tool)
内容总结
以上是互联网集市为您收集整理的python-如何在Django中通过类似应用程序的配置注册Flask蓝图?全部内容,希望文章能够帮你解决python-如何在Django中通过类似应用程序的配置注册Flask蓝图?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。