前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python: 实际项目中抽象出的小项目设计

Python: 实际项目中抽象出的小项目设计

作者头像
小小科
发布2018-05-03 13:15:04
6500
发布2018-05-03 13:15:04
举报
文章被收录于专栏:北京马哥教育

题图.png

Python: 一周笔记

本文根据实际项目中的一部分api 设计抽象出来,实例化成一个简单小例子,暂且叫作「学生管理系统」。

这个系统主要完成下面增删改查的功能:

包括:

  • 学校信息的管理
  • 教师信息的管理
  • 学生信息的管理

根据Api请求的动作:

  • POST: 增加信息
  • GET: 查询信息
  • PUT: 更新信息
  • DELETE: 删除信息

可以以下面一个简单的实例看这个系统完成什么样的工作:

发送curl 命令:

返回结果:

其他的动作类似的发送api 请求,完成相应的动作,真实的项目往往后加上数据库的操作。

整个流程主要包括:

  • restful api 设计
  • 数据表设计
  • 开发:目录的结构、一致性
  • 结果展示

1. Restful API 设计

主要包括URL 设计和 状态码的设计:

POST:

GET:

PUT:

DELETE:

2. 数据库设计

主要包括:表设计,字段类型等的设计,鉴于篇幅有限只展示School 表:

School:

3. 开发

目录结构:考虑两个因素

  • 耦合性
  • 扩展性

数据库操作和业务操作分开,提供接口:

数据库API:

主要使用sqlalchemy 的增删改查进行封装:

以add 实例:

flask_api:

主要使用flask 定义不同动作的接口:

以POST示例:

4. 工具

restful api 发送请求命令工具:

  • POSTMAN: chrome 浏览器插件
  • RESTClient: 火狐浏览器插件
  • 服务器端:用curl 命令吧

POSTMAN 示例图:

postman.png

5. 结果展示

发送请求(api) --》 数据库增删改查(数据持久化) --》 返回Json 格式的数据和状态码(展示)

result:

数据库 school 表中插入这条数据,并把插入的数据信息展示出来。

school_post.png

code:

code

下一篇根据这个项目进行讲解如何进行测试:并讲解python 测试。

  • unittest
  • mock
  • tox
  • coverage
  • nose

作者:谢小路 来源:http://www.jianshu.com/p/2584bd0d4f19


本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2017-08-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 马哥Linux运维 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Python: 一周笔记
    • 1. Restful API 设计
      • 2. 数据库设计
        • 3. 开发
          • 4. 工具
            • 5. 结果展示
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档