如何编写一个|如何编写一个 Python Web 应用 (零)
最近在为一个开源社区开发一个 FAQ (Frequently Asked Questions) 服务模块, 开发语言我选择了 Python. 这也是我第一次使用 Python 编写 Web服务. 之前我一直习惯用 Java 来进行 Web 后端开发, 而我熟悉的一套最基础的 Java Web 技术栈是这样的:
- Spring X: 整个应用的框架, 这里的 'X' 包括 'boot', 'cloud', 等等
- Mybatis/Mybatis-plus: 数据库 ORM
- Mybatis-plus-generator: 逆向工程, 即由数据库生成 DAO. 但它能做的不止于此, 它还可以生成整个目录结构
- fastjson/gson/jackson: json 解析
- Maven/gradle: 依赖管理. 使用一个
pom.xml
/build.gradle
文件使得项目可以快速构建环境
- Flask: 整个应用的框架
- Flask-SQLAlchemy: SQLAlchemy 在 flask 中的插件. 用于数据库 ORM. 相比 Java, 它提供了更灵活的接口, 尤其是对于复杂关系
- flask-sqlacodegen: 针对 SQLAlchemy 的逆向工程
- jsonschema: 用于 json 请求体的校验
- pip: 依赖管理. 对于 Web 开发来说, pip 已经足够了
Ok~下面是接下来的文章内容,开始阅读吧:
目录:
- 第一章:Flask
- Application Context
- View Functions & CLI Command
- Blueprints 蓝图
- 第二章:Flask-SQLAlchemy
- 简单增删改查
- 复杂关系: 一对一, 一对多
- 使用 sqlacodegen 实现针对 SQLAlchemy 的逆向工程
- [https://segmentfault.com/a/11...
- 【如何编写一个|如何编写一个 Python Web 应用 (零)】第四章:效率提升——使用 PowerShell 指令配置 Pycharm run configuration 实现自动逆向工程与自动更新依赖文件 requirements.txt
- 自动逆向工程
- 自动更新配置文件
- Pycharm run/debug configurations
推荐阅读
- 一个人的旅行,三亚
- 一个小故事,我的思考。
- 一个人的碎碎念
- 七年之痒之后
- 我从来不做坏事
- 考研英语阅读终极解决方案——阅读理解如何巧拿高分
- 异地恋中,逐渐适应一个人到底意味着什么()
- 如何寻找情感问答App的分析切入点
- 迷失的世界(二十七)
- live|live to inspire 一个普通上班族的流水账0723