python-Flask如何内部加载蓝图?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python-Flask如何内部加载蓝图?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1228字,纯文字阅读大概需要2分钟。
内容图文
![python-Flask如何内部加载蓝图?](/upload/InfoBanner/zyjiaocheng/657/a6738b1bd16e4b7f932bd752aa645766.jpg)
我只是对Flask的蓝图如何导入感兴趣.在Flask完成的所有工作的最后,它仍然会导入python模块,如果我没错,python在导入时会做两件事:在名称空间中注册模块名称,然后根据需要对其进行初始化.
因此,如果Flask蓝图在注册时被初始化,那么所有模块都在内存中,并且如果要注册的蓝图很多,那么内存就被浪费了,因为在一个请求中基本上只使用一个蓝图.损失不大,但仍然…
但是,如果仅将其注册在名称空间中并且仅在需要时(当真正的请求到达时)进行初始化,那么一次注册它们就很有意义(这是我理解的推荐方式).我想这里是这样:)但是只是想问和理解得更深一些.
解决方法:
从长远来看,我不是专家,但是最近我一直在研究蓝图.
如果蓝图代码已导入到当前的Python实例中,则只能在flask应用程序上注册蓝图,例如:
from my_blueprint import blueprint_object
app.register_blueprint(blueprint_object, url_prefix='/my_blueprint')
表示blueprint_object所需的所有内存已分配完毕,与my_blueprint关联的__init__.py文件已评估完毕,一切准备就绪.
我曾尝试过尝试尝试在app.before_first_request方法中加载蓝图,但flask不允许这样做,所有蓝图都需要在任何请求发出之前加载(而before_first_request在此之后才有效运行,但在获取任何其他代码之前)玩).
设计蓝图旨在为Flask Web应用程序提供可扩展的功能.我不确定为什么加载它们会浪费资源,除非您只使用一次特定的功能,在这种情况下,您可能希望将应用程序重构为多种不同的形式您可以根据需要启动的应用程序.
内容总结
以上是互联网集市为您收集整理的python-Flask如何内部加载蓝图?全部内容,希望文章能够帮你解决python-Flask如何内部加载蓝图?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。