• python使用django开发接口


    第一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 项目名

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

      4.运行django服务:

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

    注意:

    1)端口号不要被占用

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

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

     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 名称,新建成功之后,如下图:

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

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

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

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

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

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

     注意:

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

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

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

    4)实现数据迁移:

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

     

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

     4.设计接口

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

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

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

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

     


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


     执行 python manage.py runserver 127.0.0.1:7777

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

  • 相关阅读:
    CMake基本语法
    Immutable使用与react+redux
    mysql 安装之docker
    elasticsearch 安装之docker 单机
    局域网共享时提示:你没有权限访问,请与网络管理员联系
    【python、Neo4j】 python3.6环境安装neo4j客户端
    【python】 Anaconda jupyter 服务正常,内核启动失败, ipython启动失败
    Neo4j 手动安装apoc插件
    Ubuntu16 安装配置Neo4j
    node工具之nodemon
  • 原文地址:https://www.cnblogs.com/smilecindy/p/14022012.html
Copyright © 2020-2023  润新知