python开发接口让第三方调用_python使用django开发接口

本文详细介绍了如何使用Django框架开发Python接口供第三方调用。从Django的基础介绍、安装配置、项目创建,到数据库模型、URL路由、视图逻辑和接口设计,一步步指导开发者实现接口的开发。特别强调了数据库配置、数据迁移、类视图与函数视图的使用,并提供了项目源码链接和测试方法。

第一part:django的介绍

Django:是用python语言开发的一个开源的web开发框架,并且遵循MVC设计,是python的第三方模块。

1.特点:是一个非常快速、简单、代码量少,可以很好的完成web项目的开发

a.快速开发b.安全性高 c.可扩展性强 d.免费开源

2.使用pip命令安装:pip install django

3.在pycharm中创建django项目

如果在已有的项目下进行创建一个django项目的话,直接在在终端使用django-amdin startproject 项目名

2114399-20201122150411507-693501270.png

创建完项目后,其中的相关文件需要注意了解:

2114399-20201122150516439-102551112.png

4.运行django服务:

在终端上使用命令:python manage.py runserver 服务器地址:端口号

注意:

1)端口号不要被占用

2)端口不要使用主流浏览器内部被限定的端口(例如:chrome:6666),这部分端口被称为不安全的端口。端口总有2的十六次方个。

3)如果需要使用ip地址的话这需要完成配置操作,则需要找到对应配置文件(D:\python3.7\Lib\site-packages\django\http\request.py)进行添加该pi地址:如下图:

loading.gif

2114399-20201122154140387-1264833450.png

5.django的一些注意事项:

1)如果新增url路由导入相关逻辑操作模块后重启服务提示找不到对应的模块的话如下提示:

两种解决方案:

a.将当前的django项目路径添加到PYTHONPATH环境变量中 ,但必须记住要重启pycharm

b.在pycharm中将django项目设置为source root

2)需要实现django项目的数据初始化操作:

a.执行:python manage.py makemigrations

b.再执行:python manage.py migrate

3)实现超管用户的创建:

python manage.py createsuperuser

6.url路由请求规则问题:

如果声明的url地址在后面添加了/,并且django3.0默认的访问一个url地址时会在末尾添加/,因为其中APPEND_SLASH该参数的默认值是True值。那么如果不想让 其自动添加的话,则需要手动将该参数的值设置为False值

第二part:django的分层:MVC&&MVT

(一).MVC模型:

MVC:实际就是将传统的输出、处理、输入等任务运用到图形化用户交互模型中所存在的,该思想被广泛应用到软件工程架构中,并且后来被直接应用到web开发方面被称为web MVC框架。

M:model,主要封装对数据库层的访问,实现数据的增、删、改、查等操作;

V:View,用于结果封装生成页面展示给用户看;

C:Controller,用于控制,实现接受请求,完成请求的业务逻辑处理,与Modle和View交互

(二)MVT模型:

MVT(模型视图模板层)中的V等价于MVC中的C,MVT中的T等价于MVC中的V。

[思考]:MVT模型、MVC模型,两者有什么区别?说一下他们之间的实现?

MVT中的视图层表现形式拥有两种实现方式:CBV(class-basic views)类视图、FBV(function -basic view )函数视图

函数视图完成的话其必然需要携带一个参数为request表示的是请求对象,在url路由规则映射时调用必须调用函数的对象不能够调用的具体方法

类视图必须继承view类,并且可以通过重写各个请求方法完成具体的业务逻辑处理

第三part:使用django开发接口

项目源码地址:https://github.com/huangshan1993/InterfacePorgram/tree/master/

1.创建一个app,使用python manage.py startapp 名称,新建成功之后,如下图:

2114399-20201122221204485-1078487405.png

2.在models.py中编写模型层代码,创建CustomerInfo表,如下:

2114399-20201122221257116-1848172564.png

3.将models.py文件定义的表结构迁移到本地的mysql服务器中

1)在settings.py文件中配置mysql数据库信息,文件默认只配置了sqlite数据库信息,如下图:

2114399-20201122164923596-1193895007.png

2)在mysql服务器中创建与settings.py文件中名称一样的数据库名称

2114399-20201122165811172-1765821253.png

注意:mysql数据库在模型层中是不能够自动创建对应的数据库的,因此必须手动在mysql服务器中创建一个数据库名称为mydatabase,否则实现实现数据迁移和同步的时候会提示无法找到对应的数据库.

3)将apps添加到settings.py文件中的INSTALLED_APPS,如下图:

2114399-20201122223237025-1849399591.png

注意:

a.如果不将apps在settings.py文件中配置的话,则会提示无法找到对应的apps

b.需要安装mysqlclient的第三方包,否则提示mysqldb的error错误

c.最新的django3.0版本只能兼容mysql8.0以上版本

4)实现数据迁移:

生成迁移文件:python manage.py makemigrations apps的名字

2114399-20201122223437938-994614993.png

2114399-20201122223503244-31621507.png

执行迁移操作:python manage.py migrate apps的名字:

2114399-20201122223713788-2124931965.png

2114399-20201122223655749-770346999.png

4.设计接口

(1)在views.py文件中设计接口的逻辑:包含客户的增删改查

详见项目中的AddCustomers中的views.py文件.

(2)在django目录下新建一个public的package用来存放views.py设计接口中判断逻辑的一些通用方法封装

5.在urls.py文件中增加接口的路由配置

loading.gif

2114399-20201122203327413-1754087754.png

第四part:运行django,对开发的接口进行测试

执行 python manage.py runserver 127.0.0.1:7777

测试文档详见项目中的"接口说明文档.docx文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值