摘要:我們將會創建一個簡單的,來讓管理員能夠查看和編輯和。我們將會在接下來的例子中使用這個賬戶。創建一個新的模塊叫。但是是一個好的設計。最后,我們使用來導入默認的登錄登出這是可選的。我們想啟用分頁和只有用戶能夠調用。
Quickstart
我們將會創建一個簡單的API,來讓管理員能夠查看和編輯Users和Groups。
項目開始創建一個新的項目叫 tutorial,然后創建一個app叫quickstart.
# 創建項目目錄 mkdir tutorial cd tutorial # 創建虛擬環境,并進入虛擬環境中 virtualenv env source env/bin/activate # 安裝django 和 REST framework pip install django pip install djangorestframework # 創建項目和app django-admin.py startproject tutorial cd tutorial django-admin.py startapp quickstart cd ..
創建數據庫:
python manage.py migrate
創建一個超級用戶admin,密碼是password123。我們將會在接下來的例子中使用這個賬戶。
python manage.py createsuperuser
首先,我們將去定義一些serializer。創建一個新的模塊叫 tutorual/quickstart/serializers.py。
from django.contrib.auth.models import User, Group from rest_framework import serializers class UserSerializer(serializers.HyperlinkedModelSerializer): class Meta: model = User fields = ("url","username","email","groups") class GroupSerializer(serializers.HyperlinkModelSerializer): class Meta: model = Group fields = ("url","name")
注意 這里我們使用 hyperlinked(HyperlinkedModelSerializer)。你也可以使用primary key和各式各樣其他的關系。但是 hyperlinking是一個好的RESTful設計。
Views馬上,我們將寫一些views.打開 tutorial/quickstart/views.py
from django.contrib.auth.models import User, Group from rest_framework import viewsets from tutorial.quickstart.serializers import UserSerializer, GroupSerializer class UserViewSet(Viewsets.ModelViewSet): """ API允許查看和編輯 用戶 """ queryset = User.object.all().order_by("-data_joined") serializer_class = UserSerializer class GroupViewSet(Viewsets.ModelViewSet): """ API允許查看和編輯 組 """ queryset = Group.objects.all() serializer_class = GroupSerializer
將有共同行為的各式各樣的View歸為一類并稱之為 ViewSets
如果我們需要,我們可以輕易的拆分這些View,但是使用 viewsets將會使View邏輯看起來更加整潔和有組織性。
現在,我們來寫我們的API URLs.在 tutorual/urls.py
from django.conf.urls import url, include from rest_framework import routers from tutorial.quickstart import views router = routers.DefaultRouter() router.register(r"users", views.UserViewSet) router.register(r"groups", views.GroupViewSet) urlpatterns = [ url(r"^", include(router.urls)), url(r"^api-auth/", include("rest_framework.urls", namespace="rest_framework")) ]
因為我們使用了viewsets來替代views,我們能夠自動產生我們API的URL,只要在router中簡單的注冊一下我們的viewsets。
同樣,如果我們需要更多的控制我們的API URLs,我們能夠在簡單的在下面使用常規的 class-based views,并寫入url conf中。
最后,我們使用 browsable API來導入默認的登錄登出Views.這是可選的。
我們還需要設置一些全局變量。我們想啟用分頁和API只有Admin用戶能夠調用。這些設置都在 tutorial/settings.py中:
INSTALLED_APPS = ( ... "rest_framework", ) REST_FRAMEWORK = { "DEFAULT_PERMISSION_CLASSES": [ "rest_framework.permissions.IsAdminUser", ], "PAGE_SIZE": 10 }
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/44454.html
摘要:我們將會創建一個簡單的,來讓管理員能夠查看和編輯和。我們將會在接下來的例子中使用這個賬戶。創建一個新的模塊叫。但是是一個好的設計。最后,我們使用來導入默認的登錄登出這是可選的。我們想啟用分頁和只有用戶能夠調用。 Quickstart 我們將會創建一個簡單的API,來讓管理員能夠查看和編輯Users和Groups。 項目開始 創建一個新的項目叫 tutorial,然后創建一個app叫qu...
摘要:我們將會創建一個簡單的,來讓管理員能夠查看和編輯和。我們將會在接下來的例子中使用這個賬戶。創建一個新的模塊叫。但是是一個好的設計。最后,我們使用來導入默認的登錄登出這是可選的。我們想啟用分頁和只有用戶能夠調用。 Quickstart 我們將會創建一個簡單的API,來讓管理員能夠查看和編輯Users和Groups。 項目開始 創建一個新的項目叫 tutorial,然后創建一個app叫qu...
摘要:測試這是一個測試鏈接。注意編寫注釋是一個好的習慣。包括各個字段的驗證標記,例如。字段標記也能夠控制在某些環境中如何顯示,例如呈現為之前的標記相當于中的。類似于有和類,也包含和兩個類。 Serialization——序列化 官網地址 前言 本教程將會介紹創建一個簡單webAPI。在整個學習的過程中,將會逐一介紹到REST framework的各種組件,讓你全面的了解所有東西是如果組合在一...
摘要:測試這是一個測試鏈接。注意編寫注釋是一個好的習慣。包括各個字段的驗證標記,例如。字段標記也能夠控制在某些環境中如何顯示,例如呈現為之前的標記相當于中的。類似于有和類,也包含和兩個類。 Serialization——序列化 官網地址 前言 本教程將會介紹創建一個簡單webAPI。在整個學習的過程中,將會逐一介紹到REST framework的各種組件,讓你全面的了解所有東西是如果組合在一...
摘要:測試這是一個測試鏈接。注意編寫注釋是一個好的習慣。包括各個字段的驗證標記,例如。字段標記也能夠控制在某些環境中如何顯示,例如呈現為之前的標記相當于中的。類似于有和類,也包含和兩個類。 Serialization——序列化 官網地址 前言 本教程將會介紹創建一個簡單webAPI。在整個學習的過程中,將會逐一介紹到REST framework的各種組件,讓你全面的了解所有東西是如果組合在一...
閱讀 796·2021-11-24 09:38
閱讀 998·2021-11-11 11:01
閱讀 3236·2021-10-19 13:22
閱讀 1524·2021-09-22 15:23
閱讀 2828·2021-09-08 09:35
閱讀 2766·2019-08-29 11:31
閱讀 2119·2019-08-26 11:47
閱讀 1563·2019-08-26 11:44