If you want to implement Rest API in django and you do not want to user Django Rest Framework , tastypie or any other third party framework then you can follow rules give below to implement REST API almost .
Use HTTP verbs (GET, POST, PUT, DELETE, PATCH)
You should return response in JSON(you can also return in xml)
If you are writing one url to group all of your api related to a object calling by using proper HTTP verbs then you can almost achieve it.
URL /users/
Then REST API for user related operations can be -
GET /users/ To get all users's information.
GET /users/<pk>/ To get a user's information.
POST /users/ To create a user.
PUT /users/<pk> To update a user information.
PUT /users/ To update all user's information at once.
DELETE /users/<pk>/ To delete a user.
DELETE /users/ To delete all users.
class UserView(View):
def get(self, request, *args, **kwargs):
# logic
def post(self, request, *args, **kwargs):
# logic
def put(self, request, *args, **kwargs):
# logic
def delete(self, request, *args, **kwargs):
# logic
import json
from django.http import HttpResponse
def method(arguments):
# logic --
# logic --
data = {'pk': '1'}
response = json.dumps(data)
return HttpResponse(response, content_type="application/json")