先附上地址:https://www.django-rest-framework.org/
    首先呢,需要安装三个依赖包

    1. pip install djangorestframework
    2. pip install markdown # Markdown support for the browsable API.
    3. pip install django-filter # Filtering support

    然后再base.py配置app和鉴权

    1. INSTALLED_APPS = [
    2. ...
    3. 'rest_framework',
    4. ]
    5. REST_FRAMEWORK = {
    6. # Use Django's standard `django.contrib.auth` permissions,
    7. # or allow read-only access for unauthenticated users.
    8. 'DEFAULT_PERMISSION_CLASSES': [
    9. 'rest_framework.permissions.DjangoModelPermissionsOrAnonReadOnly'
    10. ]
    11. }

    接着前往urls.py 配置啊吧啊吧

    1. from django.urls import path, include
    2. from rest_framework import routers, serializers, viewsets
    3. from accounts.models import CustomUser
    4. from jobs.models import Job
    5. # Serializers define the API representation.
    6. class UserSerializer(serializers.HyperlinkedModelSerializer):
    7. class Meta:
    8. model = CustomUser
    9. fields = ['url', 'username', 'email', 'is_staff']
    10. # ViewSets define the view behavior.
    11. class UserViewSet(viewsets.ModelViewSet):
    12. queryset = CustomUser.objects.all()
    13. serializer_class = UserSerializer
    14. class JobSerializer(serializers.HyperlinkedModelSerializer):
    15. class Meta:
    16. model = Job
    17. fields = '__all__'
    18. class JobViewSet(viewsets.ModelViewSet):
    19. queryset = Job.objects.all()
    20. serializer_class = JobSerializer
    21. # Routers provide an easy way of automatically determining the URL conf.
    22. router = routers.DefaultRouter()
    23. router.register(r'users', UserViewSet)
    24. router.register(r'jobs', JobViewSet)
    25. urlpatterns = [
    26. path('api-auth/', include('rest_framework.urls', namespace='rest_framework')),
    27. path('api/', include(router.urls)),
    28. ]