From 53f9d4a380ee0066cbee8382ae265ea6005d8c88 Mon Sep 17 00:00:00 2001 From: Tom Christie Date: Mon, 29 Apr 2013 13:20:15 +0100 Subject: fields shortcut on views --- docs/index.md | 35 ++++++++++++++--------------------- 1 file changed, 14 insertions(+), 21 deletions(-) (limited to 'docs/index.md') diff --git a/docs/index.md b/docs/index.md index e2dd9fba..931d6114 100644 --- a/docs/index.md +++ b/docs/index.md @@ -79,42 +79,35 @@ Let's take a look at a quick example of using REST framework to build a simple m We'll create a read-write API for accessing users and groups. +Here's our `views.py` module: + from django.conf.urls.defaults import url, patterns, include from django.contrib.auth.models import User, Group - from rest_framework import serializers, viewsets, routers - - - # Serializers control the representations your API exposes. - class UserSerializer(serializers.HyperlinkedModelSerializer): - class Meta: - model = User - fields = ('url', 'email', 'is_staff', 'groups') - - - class GroupSerializer(serializers.HyperlinkedModelSerializer): - class Meta: - model = Group - fields = ('url', 'name') + from rest_framework import viewsets, routers # ViewSets define the view behavior. class UserViewSet(viewsets.ModelViewSet): queryset = User.objects.all() - serializer_class = UserSerializer + fields = ('url', 'email', 'is_staff', 'groups') class GroupViewSet(viewsets.ModelViewSet): queryset = Group.objects.all() - serializer_class = GroupSerializer + fields = ('url', 'name') +And our `urls.py` setup: - # Routers provide a convienient way of automatically managing your URLs. - router = routers.DefaultRouter() - router.register(r'users', UserViewSet, 'user') - router.register(r'groups', GroupViewSet, 'group') + from django.conf.urls.defaults import url, patterns, include + from myapp import views + from rest_framework import routers - # Wire up our API URLs, letting the router do the hard work. + router = routers.DefaultRouter() + router.register(r'users', views.UserViewSet, name='user') + router.register(r'groups', views.GroupViewSet, name='group') + + # Wire up our API using automatic URL routing. # Additionally, we include login URLs for the browseable API. urlpatterns = patterns('', url(r'^', include(router.urls)), -- cgit v1.2.3