国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

django rest framework個人學(xué)習(xí)筆記(二)————Quickstart

gghyoo / 566人閱讀

摘要:我們將會創(chuàng)建一個簡單的,來讓管理員能夠查看和編輯和。我們將會在接下來的例子中使用這個賬戶。創(chuàng)建一個新的模塊叫。但是是一個好的設(shè)計(jì)。最后,我們使用來導(dǎo)入默認(rèn)的登錄登出這是可選的。我們想啟用分頁和只有用戶能夠調(diào)用。

Quickstart

我們將會創(chuàng)建一個簡單的API,來讓管理員能夠查看和編輯Users和Groups。

項(xiàng)目開始

創(chuàng)建一個新的項(xiàng)目叫 tutorial,然后創(chuàng)建一個app叫quickstart.

# 創(chuàng)建項(xiàng)目目錄
mkdir tutorial
cd tutorial

# 創(chuàng)建虛擬環(huán)境,并進(jìn)入虛擬環(huán)境中
virtualenv env
source env/bin/activate

# 安裝django 和 REST framework
pip install django
pip install djangorestframework

# 創(chuàng)建項(xiàng)目和app
django-admin.py startproject tutorial
cd tutorial
django-admin.py startapp quickstart
cd ..

創(chuàng)建數(shù)據(jù)庫:

python manage.py migrate

創(chuàng)建一個超級用戶admin,密碼是password123。我們將會在接下來的例子中使用這個賬戶。

python manage.py createsuperuser

Serializers

首先,我們將去定義一些serializer。創(chuàng)建一個新的模塊叫 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和各式各樣其他的關(guān)系。但是 hyperlinking是一個好的RESTful設(shè)計(jì)。

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邏輯看起來更加整潔和有組織性。

URLs

現(xiàn)在,我們來寫我們的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"))
]

因?yàn)槲覀兪褂昧藇iewsets來替代views,我們能夠自動產(chǎn)生我們API的URL,只要在router中簡單的注冊一下我們的viewsets。
同樣,如果我們需要更多的控制我們的API URLs,我們能夠在簡單的在下面使用常規(guī)的 class-based views,并寫入url conf中。
最后,我們使用 browsable API來導(dǎo)入默認(rèn)的登錄登出Views.這是可選的。

Settings

我們還需要設(shè)置一些全局變量。我們想啟用分頁和API只有Admin用戶能夠調(diào)用。這些設(shè)置都在 tutorial/settings.py中:

INSTALLED_APPS = (
    ...
    "rest_framework",
)

REST_FRAMEWORK = {
    "DEFAULT_PERMISSION_CLASSES": [
        "rest_framework.permissions.IsAdminUser",
    ],
    "PAGE_SIZE": 10
}

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/45450.html

相關(guān)文章

  • django rest framework個人學(xué)習(xí)筆記)————Quickstart

    摘要:我們將會創(chuàng)建一個簡單的,來讓管理員能夠查看和編輯和。我們將會在接下來的例子中使用這個賬戶。創(chuàng)建一個新的模塊叫。但是是一個好的設(shè)計(jì)。最后,我們使用來導(dǎo)入默認(rèn)的登錄登出這是可選的。我們想啟用分頁和只有用戶能夠調(diào)用。 Quickstart 我們將會創(chuàng)建一個簡單的API,來讓管理員能夠查看和編輯Users和Groups。 項(xiàng)目開始 創(chuàng)建一個新的項(xiàng)目叫 tutorial,然后創(chuàng)建一個app叫qu...

    JiaXinYi 評論0 收藏0
  • django rest framework個人學(xué)習(xí)筆記)————Quickstart

    摘要:我們將會創(chuàng)建一個簡單的,來讓管理員能夠查看和編輯和。我們將會在接下來的例子中使用這個賬戶。創(chuàng)建一個新的模塊叫。但是是一個好的設(shè)計(jì)。最后,我們使用來導(dǎo)入默認(rèn)的登錄登出這是可選的。我們想啟用分頁和只有用戶能夠調(diào)用。 Quickstart 我們將會創(chuàng)建一個簡單的API,來讓管理員能夠查看和編輯Users和Groups。 項(xiàng)目開始 創(chuàng)建一個新的項(xiàng)目叫 tutorial,然后創(chuàng)建一個app叫qu...

    izhuhaodev 評論0 收藏0
  • django rest framework個人學(xué)習(xí)筆記(三)————Tutorial1.Serial

    摘要:測試這是一個測試鏈接。注意編寫注釋是一個好的習(xí)慣。包括各個字段的驗(yàn)證標(biāo)記,例如。字段標(biāo)記也能夠控制在某些環(huán)境中如何顯示,例如呈現(xiàn)為之前的標(biāo)記相當(dāng)于中的。類似于有和類,也包含和兩個類。 Serialization——序列化 官網(wǎng)地址 前言 本教程將會介紹創(chuàng)建一個簡單webAPI。在整個學(xué)習(xí)的過程中,將會逐一介紹到REST framework的各種組件,讓你全面的了解所有東西是如果組合在一...

    Pink 評論0 收藏0
  • django rest framework個人學(xué)習(xí)筆記(三)————Tutorial1.Serial

    摘要:測試這是一個測試鏈接。注意編寫注釋是一個好的習(xí)慣。包括各個字段的驗(yàn)證標(biāo)記,例如。字段標(biāo)記也能夠控制在某些環(huán)境中如何顯示,例如呈現(xiàn)為之前的標(biāo)記相當(dāng)于中的。類似于有和類,也包含和兩個類。 Serialization——序列化 官網(wǎng)地址 前言 本教程將會介紹創(chuàng)建一個簡單webAPI。在整個學(xué)習(xí)的過程中,將會逐一介紹到REST framework的各種組件,讓你全面的了解所有東西是如果組合在一...

    FreeZinG 評論0 收藏0
  • django rest framework個人學(xué)習(xí)筆記(三)————Tutorial1.Serial

    摘要:測試這是一個測試鏈接。注意編寫注釋是一個好的習(xí)慣。包括各個字段的驗(yàn)證標(biāo)記,例如。字段標(biāo)記也能夠控制在某些環(huán)境中如何顯示,例如呈現(xiàn)為之前的標(biāo)記相當(dāng)于中的。類似于有和類,也包含和兩個類。 Serialization——序列化 官網(wǎng)地址 前言 本教程將會介紹創(chuàng)建一個簡單webAPI。在整個學(xué)習(xí)的過程中,將會逐一介紹到REST framework的各種組件,讓你全面的了解所有東西是如果組合在一...

    ls0609 評論0 收藏0

發(fā)表評論

0條評論

gghyoo

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<