前言
DRF 框架,全称为 Django Rest Framework,是 Django 内置模块的扩展,用于创建标准化 RESTful API;它利用 ORM 映射数据库,并自定义序列化数据进行返回,多用于前后端分离项目。
Django与DRF的区别:
django:将数据库的东西通过ORM的映射取出来,通过view文件,按照template文件排出的模板渲染成HTML。当用户请求相应的url时,返回相应的结果。
DRF:DRF是Django的超集(就是前者有的东西是后者没有的东西),去掉了模板的部分,提供了一个REST的接口,同时也提供了满足该接口的代码工作流。同时,在REST的规范下,升级了权限和分页等功能,增加了限流和过滤搜索等功能。
序列化器的了解
序列化器的作用
序列化:序列化器会把模型对象转换成字典,经过response以后变成json字符串
反序列化:把客户端发送过来的数据,转换成request字典,序列化器可以把字典转成模型,再此过程中可以实现数据检验功能
模型常用字段
创建模型时需要使用一些字段,通过ORM将模型对象自动持久化到关系数据库中。一些常用字段放在最后查看
序列化器的使用
1. 环境搭配
安装所需库
pip install django
pip install djangorestframework
创建项目
mkdir django-drf #放置代码的文件夹
cd mkdir
django-admin startproject mysite #创建项目
这样我们就创建好了一个django项目
我们可以看到创建了如下目录和文件
mysite/ #根目录,项目的容器
manage.py #django项目管理命令工具
mysite/ #项目
__init__.py #空文件,旨在认为是一个包
settings.py #项目配置文件
urls.py #URL声明
asgi.py #ASGI
wsgi.py #WSGI
2. 创建模型以及数据迁移
OK,经过上面,我们以及创建了一个基本的Django项目,接下来就是项目程序编写,我们先创建应用,一般一个应用用于解决一个实际需求,现在创建一个名为app的应用来解决的我们初次学习djanog这个需求
python manage.py startapp drf #需要在mysite下输入,创建一个名为drf的应用
创建好app以后,我们要将这个包添加到setting中才能使用,并且配置rest_framework
# settings.py
INSTALLED_APPS = [
...
'rest_framework',
'drf'
]
创建一个名为student的数据模型
# mysite/drf/models.py