5-django rest framework,搭建api,这是最重要的章节
#####
通过django来完成一个json的返回,
1,现在我们使用django的cbv,就是class base view,还有就是fbv,就是function,函数,
django是推荐cbv的,因为class的代码可重用性是比fbv高一些的,
课程也是推荐cbv,这是面向对象的开发实现,
我们以商品列表页面来举例实现,因为这个列表页的开发可以涵盖大部分的drf的知识点,
既然是商品列表页,
我们首先配置一个url,在urls.py文件里面,
url(r'goods$' )
然后写一个views,
首先自己写view的时候,要基础django的view,
这个django的view里面有很多的内容,
对于怎么进行django的进阶,是通过django的官方的文档来的,但是django的官网文档,对于新手是不合适的,一般是有经验的才可以
django看中文的文档,你可以大致的了解,django有哪些内容,你经常看文档,对于开发会有很大的好处,
django提供了很多的view,
---->
新建一个列表,然后插入json,
怎么返回给前端呢?需要做一个json的序列化,json.dumps()
----->
既然这种方式也可以解决返回json的问题,那为什么还需要使用drf
1,因为序列化是把所有的都解析出来的,工作量很大,容易出错,
2,如果add_time序列化是会报错的,
所以还有很多的问题,
drf做了很多的东西,可以解决这些问题,
###############
第二个序列化方法:
上面是自己把每一个字段序列化的,
from django.forms.models import model_to_dict
但是这个有问题,也会有一些特殊的字段不能序列化,比如时间格式,图片格式,
第三个序列化方法:
django的core里面提供了一个序列化的方法,可以用这个把整个model都序列化了,
from django.core import serializers
有一个JsonResbons
既然django序列化这么简单了,为什么还需要drf?
因为这个序列化的方式,序列化的结果serializers方法是固定的,不灵活,如果要定制,还要自己该,
而且django序列化也没有文档,也没有检测,这些drf都会给我们做,
后面drf,你了解了,就会知道多么的强大,有很多的好处,
上面都是比较,介绍drf,下面是开始正式开始drf,
##########
通过商品列表学习drf的基础知识,
1,drf提供的一些views,
################
from django.core import serializers
技术改变命运