目前已将搭建好Django环境,接下来给环境添加API
项目的目录结构:
|-- Django_Study
| |-- django_restful
| | |-- __ init__.py
| | |-- settings.py
| | |-- urls.py
| | |-- wsgi.py
– manage.py
| |-- api
| | |-- __ init__.py
| | |-- admin.py
| | |-- apps.py
| | |-- models.py
| | |-- serializers.py
| | |-- tests.py
| | |-- views.py
from django.contrib.auth.models import User,Group
from rest_framework import serializers
class UserSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model=User
fields=('url','username','email','groups')
class GroupSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model=Group
fields=('url','name')
from django.shortcuts import render
from django.contrib.auth.models import User,Group
from rest_framework import viewsets
from api.serializers import UserSerializer,GroupSerializer
# Create your views here.
class UserViewSet(viewsets.ModelViewSet):
queryset = User.objects.all()
serializer_class = UserSerializer
class GroupViewSet(viewsets.ModelViewSet):
queryset = Group.objects.all()
serializer_class = GroupSerializer
from django.contrib import admin
from django.urls import path
from django.conf.urls import include
from rest_framework import routers
from api import views
router=routers.DefaultRouter()
router.register(r'users',views.UserViewSet)
router.register(r'groups',views.GroupViewSet)
urlpatterns = [
path('admin/', admin.site.urls),
path('',include(router.urls)),
path('api-auth/',include('rest_framework.urls',namespace='rest_framework')),
]
启动sever,用浏览器打开 http://127.0.0.1:8000/ 即可看到API主页,如下所示:
点击主页右上角的 Log in 登陆超级管理员用户
点击Group创建数据 (http://127.0.0.1:8000/groups/)
数据
Name:Tester
Name:developer
点击User 创建 User 数据(http://127.0.0.1:8000/users/)
数据
Username : user001
Email address : [email protected]
Groups : Tester
Username : user002
Email address : [email protected]
Groups : Tester
Username : user003
Email address : [email protected]
Groups : developer
Username : user004
Email address : [email protected]
Groups : developer
使用Postman接口工具能正常访问接口并正确的返回值