Example

让我们看一个使用REST framework构建的支持模块化API的快速示例。 我们创建一个读-写API来访问项目中用户的信息。 REST framework的任何全局设置否会保存在命名为REST_FRAMEWORK的配置字典中,我们将从这着手。 首先,将下面的代码添加到settings.py模块中:

REST_FRAMEWORK = {
    # Use Django's standard `django.contrib.auth` permissions,
    # or allow read-only access for unauthenticated users.
    'DEFAULT_PERMISSION_CLASSES': [
        'rest_framework.permissions.DjangoModelPermissionsOrAnonReadOnly'
    ]
}

您需要确保您已经将rest_framework添加到了INSTALLED_APPS中。 现在,我们将准备创建我们的API。下面是我们项目下的urls.py模块:

from django.conf.urls import url, include
from django.contrib.auth.models import User
from rest_framework import routers, serializers, viewsets

# Serializers define the API representation.
class UserSerializer(serializers.HyperlinkedModelSerializer):
    class Meta:
        model = User
        fields = ('url', 'username', 'email', 'is_staff')

# ViewSets define the view behavior.
class UserViewSet(viewsets.ModelViewSet):
    queryset = User.objects.all()
    serializer_class = UserSerializer

# Routers provide an easy way of automatically determining the URL conf.
router = routers.DefaultRouter()
router.register(r'users', UserViewSet)

# Wire up our API using automatic URL routing.
# Additionally, we include login URLs for the browsable API.
urlpatterns = [
    url(r'^', include(router.urls)),
    url(r'^api-auth/', include('rest_framework.urls', namespace='rest_framework'))
]

现在,您可以在浏览器中访问http://127.0.0.1:8000/来查看您的API和users。右上角有登录按钮,您登录后也可在系统中添加和删除用户。

results matching ""

    No results matching ""