Django通用视图APIView和视图集ViewSet的介绍和使用

.APIView
DRF框架的视图的基类是 APIView
APIView的基本使用和View类似

Django默认的View请求对象是 HttpRequest,REST framework 的请求对象是 Request。
Request对象的数据是自动根据前端发送数据的格式进行解析之后的结果。
HttpRequest.GET ————> Request.query_params
HttpRequest.POST 、HttpRequest.body————> Request.data

Django默认的View响应对象是 HttpResponse(以及子类),REST framework 的响应对象是Response。
构造方式:
Response(data, status=None, template_name=None, headers=None, content_type=None)
参数说明:

List item

data: 为响应准备的序列化处理后的数据;

status: 状态码,默认200;

template_name: 模板名称,如果使用HTMLRenderer时需指明;

headers: 用于存放响应头信息的字典;

content_type: 响应数据的Content-Type,通常此参数无需传递,REST framework会根据前端所需类型数据来设置该参数。

支持定义的属性:
authentication_classes列表或元祖,身份认证类
permissoin_classes列表或元祖,权限检查类

throttle_classes列表或元祖,流量控制类。

转自: https://blog.csdn.net/qq_31742423/article/details/83241461

Django去操作已经存在的数据库

数据库,各种表结构已经创建好了,甚至连数据都有了,此时,我要用Django管理这个数据库,ORM映射怎么办???

Django是最适合所谓的green-field开发,即从头开始一个新的项目

但是呢,Django也支持和以前遗留的数据库和应用相结合的。

Django的数据库层从Python代码生成SQL schemas。但是对于遗留的数据库,你已经用于SQL schemas,这种情况下你需要为你已经存在的数据库表写模型(为了使用数据库的API),幸运的是,Django自带有通过阅读你的数据库表规划来生成模型代码的辅助工具 manage.py inspectdb

 1.Django默认使用的是sqllit数据库?如何使用MySQL数据库?

 然后呢,我们就需要根据数据库去自动生成新的models文件

导出并且去代替models.py

这样你就会发现在manage.py的同级目录下生成了一个models.py文件

使用这个models.py文件覆盖app中的models文件。

如果完成了以上的操作,生成的是一个不可修改/删除的models,修改meta class中的managed = True则可以去告诉django可以对数据库进行操作

此时,我们再去使models.py和数据库进行同步

这个时候就已经大功告成了!

 然我们来验证一下:

前端知识点总结——VUE

来源地址:

https://segmentfault.com/a/1190000013378197

前端知识点总结——VUE(持续更新中)

1.框架和库的区别:

框架:framework 有着自己的语法特点、都有对应的各个模块
库 library 专注于一点

框架的好处:

UI:user interface
GUI : graphical user interface
CLI : command line interface
API : application interface

思维模式的转换:

2.Vue概述

3.Vue中基础知识

4.组件化

5.自定义指令

6.过滤器

过滤器是针对一些数据 进行筛选、过滤、格式化等相关的处理,变成我们想要的数据

过滤器的本质 就是一个带有参数带有返回值的方法

Vue1. 支持内置的过滤器,但是Vue2. 就不再内置过滤器,但是支持自定义过滤器。

1、过滤器的创建和使用

2、如何在调用过滤器时,完成参数的发送和接受

7.复合组件

8.生命周期

9.常用属性

10.组件间通信

11.补充组件创建的方式

12.路由模块

路由模块的本质 就是建立起url和页面之间的映射关系

1、SPA的基本概念和工作原理

2、路由模块的基本使用

3、使用路由模块来实现页面跳转的方式

4、完成参数的传递

5、路由嵌套

13.搭建基于CLI开发环境的方式

14.axios

1.axios的get方法

2.axios的post方法

export const postAjax= function (getUrl,postAjaxData) {
return axios.get(postUrl, {

})
}

3.axios的拦截器
主要分为请求和响应两种拦截器,请求拦截一般就是配置对应的请求头信息(适用与常见请求方法,虽然ajax的get方法没有请求头,但是axios里面进行啦封装),响应一般就是对reponse进行拦截处理,如果返回结果为[]可以转化为0

1.请求拦截:将当前城市信息放入请求头中

axios.interceptors.request.use(config => {
config.headers.cityCode = window.sessionStorage.cityCode //jsCookie.get(‘cityCode’)
return config
},

2.响应拦截:处理reponse的结果