安装配置
# 安装
虚拟环境中
pip install djangorestframework
1
如果不行就回退两个版本
# 引入
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'demo1',
'rest_framework', #在此引入
]
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
# 写序列化类
首先自己得写好model
from django.db import models
# Create your models here.
class Person(models.Model):
first_name = models.CharField(max_length=30)
last_name = models.CharField(max_length=30)
1
2
3
4
5
6
7
2
3
4
5
6
7
在app中新建一个ser.py
from rest_framework.serializers import ModelSerializer
from demo1.models import Person
class PersonModelSerializer(ModelSerializer):
class Meta:
model = Person
fields = "__all__"
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
# 写视图类
from django.shortcuts import render
from .ser import PersonModelSerializer
from .models import Person
from rest_framework.viewsets import ModelViewSet
# Create your views here.
class PersonViewSet(ModelViewSet):
queryset = Person.objects.all()
serializer_class = PersonModelSerializer
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
# 写路由关系
from django.contrib import admin
from django.urls import path
from demo1 import views
from rest_framework.routers import DefaultRouter
router = DefaultRouter() # 可以处理视图的路由器
router.register('persons', views.PersonViewSet) # 向路由器中注册视图集
# 将路由器中的所有路由信息追到django的路由列表中
urlpatterns = [
path('admin/', admin.site.urls),
]
urlpatterns += router.urls
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# 效果
好了,我们现在 python manage.py runserver
Starting development server at http://127.0.0.1:8000/
看下根路径
有一个键值对,对应的一个地址,我们点进去
就是我们写的数据,注意看地址
下面可以post添加数据
在地址里加键值,可以查看相应的数据http://127.0.0.1:8000/persons/1/

编辑 (opens new window)
上次更新: 2021/08/13, 23:21:49