博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Flask 项目结构(仅供参考)
阅读量:4703 次
发布时间:2019-06-10

本文共 1243 字,大约阅读时间需要 4 分钟。

project/    app/                    # 整个程序的包目录        static/                 # 静态资源文件            js/                     # JS脚本            css/                    # 样式表            img/                    # 图片            favicon.ico              # 网站图标        templates/              # 模板文件            common/                 # 通用模板            errors/                 # 错误页面            user/                   # 用户模板            posts/                  # 帖子模板            email/                  # 邮件发送        views/                  # 视图文件        models/                 # 数据模型        forms/                  # 表单文件        config.py               # 配置文件        email.py                # 邮件发送        extensions.py           # 各种扩展    migrations/             # 数据库迁移目录    tests/                  # 测试单元    venv/                   # 虚拟环境    requirements.txt        # 依赖包的列表    manage.py               # 项目启动控制文件

create_app()函数是程序的工厂函数,用处是把创建程序实例的过程转移到它里面

工厂函数在app包的构造文件(init.py)里定义,在__init__.py里创建的扩展对象(bootstrap = Bootstrap()

mail = Mail()
moment = Moment()
db = SQLAlchemy())可以在工厂函数里调用init_app()完成初始化过程。
1608688-20190322095711873-2142241856.png

这样的一个问题是:转换成程序工厂函数的操作让定义路由变复杂了。这个时候可以使用蓝图定义路由,蓝图中定义的路由处于休眠状态,直到蓝图注册到程序上后,路由才真正成为程序的一部分。

转载于:https://www.cnblogs.com/plusUltra/p/10559769.html

你可能感兴趣的文章
在商城系统中使用设计模式----策略模式
查看>>
0816 1459 json & pickle ,目录导入,目录规范
查看>>
Alpha 冲刺 (10/10)
查看>>
哈希取余法、哈希表大小取质数的问题
查看>>
asp.net mvc 3.0 远程验证步骤
查看>>
DAL BLL 模板(事务操作)(事务操作中再执行事务操作)
查看>>
内存检测
查看>>
Egret的一些性能优化
查看>>
express中间件的理解
查看>>
Java小案例——对字符串进行加密解密
查看>>
JavaScript规范
查看>>
java Map及Map.Entry详解
查看>>
Docker 启动报错 Error starting daemon: SELinux is not supported with the overlay2 ...alse)
查看>>
基于Spring4+SpringMVC4+Mybatis3+Hibernate4+Junit4框架构建高性能企业级的部标1077视频监控平台...
查看>>
对于两个初始时设置为Sensor的刚体,不会触发preSolve和postSolve
查看>>
将图片url转换为base64与file对象
查看>>
SecureCRT常见配置
查看>>
前后端解决跨域问题
查看>>
重写toFixed()方法
查看>>
TensorFlow入门之MNIST最佳实践-深度学习
查看>>