####### users/serializers.py: ####### from rest_framework import serializers class UserSerializer(serializers.Serializer): ID = serializers.IntegerField() Username = serializers.EmailField() FirstName = serializers.CharField() LastName = serializers.CharField() Group = serializers.CharField() Active = serializers.BooleanField() ####### root urls.py: ####### from rest_framework import routers from rest_framework.authtoken.views import obtain_auth_token from users.views import UserViewSet router = routers.DefaultRouter() router.register(r'users', UserViewSet, base_name='users') urlpatterns = [ url(r'^api-auth/', include('rest_framework.urls', namespace='rest_framework')), url(r'^api/', include(router.urls)), ] ###### users/views.py: ####### from rest_framework import viewsets from rest_framework.response import Response from rest_framework.status import HTTP_201_CREATED, HTTP_204_NO_CONTENT from users.serializers import UserSerializer DUMMY_USER_DATA = [ { "ID": 234, "Username": "jsmith@example.com", "FirstName": "john", "LastName": "smith", "Group": "admin", "Active": True }, { "ID": 235, "Username": "jdoe@example.com", "FirstName": "jane", "LastName": "doe", "Group": "admin", "Active": True } ] class UserViewSet(viewsets.ViewSet): """ A simple ViewSet for listing or retrieving users. """ def list(self, request): # TODO: get the actual user data, not just DUMMY_USER_DATA serializer = UserSerializer(DUMMY_USER_DATA, many=True) return Response(serializer.data) def retrieve(self, request, pk=None): # TODO: get the actual user data, not just DUMMY_USER_DATA serializer = UserSerializer(DUMMY_USER_DATA[0]) return Response(serializer.data) def create(self, request, *args, **kwargs): serializer = UserSerializer(data=request.data) serializer.is_valid(raise_exception=True) # TODO: actually create the user here return Response(serializer.data, status=HTTP_201_CREATED) def update(self, request, *args, **kwargs): serializer = UserSerializer(data=request.data) serializer.is_valid(raise_exception=True) # TODO: actually update the user here. return Response(serializer.data) def destroy(self, request, pk=None): # TODO: actually delete the user here. return Response(status=HTTP_204_NO_CONTENT)
Run
Reset
Share
Import
Link
Embed
Language▼
English
中文
Python Fiddle
Python Cloud IDE
Follow @python_fiddle
Browser Version Not Supported
Due to Python Fiddle's reliance on advanced JavaScript techniques, older browsers might have problems running it correctly. Please download the latest version of your favourite browser.
Chrome 10+
Firefox 4+
Safari 5+
IE 10+
Let me try anyway!
url:
Go
Python Snippet
Stackoverflow Question