1.环境配置安装
1.1创建虚拟环境
创建虚拟环境目录
virtualenv -p python drfdemo
进入虚拟生产环境:
source drfdemo/bin/activate
1.2安装需要的依赖
查看当前环境下的库
pip list
安装django,djangorestframework
pip install django -i https://pypi.tuna.tsinghua.edu.cn/simple/
pip install djangorestframework
2.创建django项目
2.1生成django
2.2创建app
2.3用pycahrm打开项目
2.4修改环境变量,使用刚才生成的虚拟环境
2.5.添加rest_framework,student应用
3.开始代码
3.1创建模型类
student.models.py
from django.db import models
class Student(models.Model):
GENDER_CHOICES=(
(1,'male'),
(2,'female'),
)
name=models.CharField(max_length=32)
sex=models.IntegerField(choices=GENDER_CHOICES)
birth=models.DateField(blank=True,null=True)
desc=models.TextField(max_length=1024)
3.2数据迁移,生成数据库
Tools-Run manage.py Task
执行
makemigrations
migrate
3.3创建序列化器
student应用下新建serializers.py
from rest_framework import serializers
from .models import Student
class StudentModelSerializer(serializers.ModelSerializer):
class Meta:
model = Student
fields = "__all__"
3.4编写视图函数
student应用下views.py
from django.shortcuts import render
from rest_framework.viewsets import ModelViewSet
from .models import Student
from .serializers import StudentModelSerializer
class StudentViewSet(ModelViewSet):
queryset = Student.objects.all()
serializer_class = StudentModelSerializer
3.5定义路由
student.urls.py
from . import views
from rest_framework.routers import DefaultRouter
urlpatterns = []
router = DefaultRouter() # 自动生成curd的url
router.register('students', views.StudentViewSet)
urlpatterns += router.urls
myweb.urls.py
from django.contrib import admin
from django.urls import path,include
urlpatterns = [
path('admin/', admin.site.urls),
path('stu/', include('student.urls')),
]
4.运行项目
python manage.py runserver
5.测试
http://127.0.0.1:8000/stu/students/
get提供查询列表
post添加数据
http://127.0.0.1:8000/stu/students/1/
put,修改数据
delete,删除数据