例
讓我們看一個使用 REST 框架構建一個簡單的模型支援的 API 的快速示例。
我們將建立一個讀寫 API,用於訪問有關專案使用者的資訊。
REST 框架 API 的任何全域性設定都儲存在名為 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'
]
}
我們現在準備建立我們的 API 了。這是我們專案的 root 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,並檢視新的使用者API。如果你使用右上角的登入控制元件,你還可以從系統新增,建立和刪除使用者。