Answers for "build rest apis with django rest framework and python"

0

build rest apis with django rest framework and python

# Package installment in terminal(Recommended : Activate virtual env)
pip install djangorestframework

#Project>Settings.py
INSTALLED_APPS += ['rest_framework', 'rest_framework.authtoken']
REST_FRAMEWORK = {
    'DEFAULT_AUTHENTICATION_CLASSES': [
        'rest_framework.authentication.BasicAuthentication',
        'rest_framework.authentication.SessionAuthentication',
      	'rest_framework.authentication.TokenAuthentication',
    ]
}

#Project>urls.py
urlpatterns += [path('api-auth/', include('rest_framework.urls'))]

#Function Based
from rest_framework.decorators import api_view

@api_view()
def hello_world(request):
    if request.method == 'POST':
        return Response({"message": "Got some data!", "data": request.data})
    return Response({"message": "Hello, world!"})
  
#Class Based
from rest_framework.views import APIView
from rest_framework.response import Response
from rest_framework import authentication, permissions
from django.contrib.auth.models import User

class ListUsers(APIView):
    """
    View to list all users in the system.

    * Requires token authentication.
    * Only admin users are able to access this view.
    """
    authentication_classes = [authentication.TokenAuthentication]
    permission_classes = [permissions.IsAdminUser]

    def get(self, request, format=None):
        """
        Return a list of all users.
        """
        usernames = [user.username for user in User.objects.all()]
        return Response(usernames)
Posted by: Guest on July-19-2021

Python Answers by Framework

Browse Popular Code Answers by Language