欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Django rest framework基本介紹與代碼示例

 更新時(shí)間:2018年01月26日 10:24:49   作者:HeatDeath  
這篇文章主要介紹了Django rest framework基本介紹與代碼示例,簡單敘述了rest framework的一些用處,可選擇的相關(guān)軟件包,然后分享了一個(gè)簡單的模型支持的API的例子,小編覺得還是挺不錯(cuò)的,具有一定借鑒價(jià)值,需要的朋友可以參考下

本文研究的主要是Django rest framework的相關(guān)內(nèi)容,分享了example,具體如下。

Django REST框架是構(gòu)建Web API的強(qiáng)大而靈活的工具包。

您可能希望使用REST框架的一些原因:

  • Web瀏覽的API是您的開發(fā)人員的巨大的可用性勝利。
  • 驗(yàn)證策略包括OAuth1a和OAuth2的包。
  • 支持ORM和非ORM數(shù)據(jù)源的序列化。
  • 如果不需要功能更強(qiáng)大的功能,可以自定義一切 - 只需使用基于功能的常規(guī)視圖。
  • 廣泛的文檔和極好的社區(qū)支持。
  • 由Mozilla,Red Hat,Heroku和Eventbrite等國際知名公司使用和信賴。

Requirements

REST框架需要以下內(nèi)容:

  • Python(2.7,3.2,3.3,3.4,3.5)
  • Django(1.8,1.9,1.10)

以下軟件包是可選的:

  • coreapi(1.32.0+) - 支持模式生成。
  • Markdown(2.1.0+) - 可瀏覽API的Markdown支持。
  • django-filter(1.0.1+) - 過濾支持。
  • django-crispy-forms - 改進(jìn)的HTML顯示過濾。
  • django-guardian(1.1.1+) - 對(duì)象級(jí)權(quán)限支持。

Installation

Install using pip, including any optional packages you want…

pip install djangorestframework
pip install markdown    # Markdown support for the browsable API.
pip install django-filter # Filtering support

Add'rest_framework'to your INSTALLED_APPS setting.

INSTALLED_APPS = (
  ...
  'rest_framework',
)

如果您打算使用可瀏覽的API,您可能還需要添加REST框架的登錄和注銷視圖。 將以下內(nèi)容添加到您的根urls.py文件中。

urlpatterns = [
  ...
  url(r'^api-auth/', include('rest_framework.urls', namespace='rest_framework'))
]

請(qǐng)注意,URL路徑可以是任何您想要的,但您必須在rest_framework的命名空間中包含“rest_framework.urls”。 您可以在Django 1.9+中省略命名空間,REST框架將為您設(shè)置。

Example

我們來看一下使用REST框架構(gòu)建一個(gè)簡單的模型支持的API的一個(gè)簡單例子。

我們將創(chuàng)建一個(gè)讀寫API來訪問我們項(xiàng)目用戶的信息。

REST框架API的任何全局設(shè)置都保存在名為REST_FRAMEWORK的單個(gè)配置字典中。 首先將以下內(nèi)容添加到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'
  ]
}

不要忘了確保你還在你的INSTALLED_APPS中添加了rest_framework。

我們已經(jīng)準(zhǔn)備好創(chuàng)建我們的API了。 這是我們項(xiàng)目的根urls.py模塊:

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

#Serializers定義API表示。
class UserSerializer(serializers.HyperlinkedModelSerializer):
  class Meta:
    model = User
    fields = ('url', 'username', 'email', 'is_staff')

#ViewSets定義視圖行為。
class UserViewSet(viewsets.ModelViewSet):
  queryset = User.objects.all()
  serializer_class = UserSerializer

#路由器提供了一種自動(dòng)確定URL conf的簡單方法。
router = routers.DefaultRouter()
router.register(r'users', UserViewSet)

#使用自動(dòng)網(wǎng)址路由連接我們的API。
# 另外,我們還包括可瀏覽的API的登錄URL。
urlpatterns = [
  url(r'^', include(router.urls)),
  url(r'^api-auth/', include('rest_framework.urls', namespace='rest_framework'))

您現(xiàn)在可以在http://127.0.0.1:8000/瀏覽器中打開該API,并查看新的“用戶”API。 如果您使用右上角的登錄控件,您還可以從系統(tǒng)添加,創(chuàng)建和刪除用戶。

總結(jié)

以上就是本文關(guān)于Django rest framework基本介紹的全部內(nèi)容,希望對(duì)大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站其他相關(guān)專題,如有不足之處,歡迎留言指出。感謝朋友們對(duì)本站的支持!

相關(guān)文章

  • 10個(gè)使用Python必須知道的內(nèi)置函數(shù)

    10個(gè)使用Python必須知道的內(nèi)置函數(shù)

    這篇文章小編主要向大家介紹的是10個(gè)使用Python必須知道的內(nèi)置函數(shù)reduce()、split()、map()等,更多后置函數(shù)請(qǐng)看下文
    2021-09-09
  • python批量替換文件名中的共同字符實(shí)例

    python批量替換文件名中的共同字符實(shí)例

    這篇文章主要介紹了python批量替換文件名中的共同字符實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-03-03
  • pygame實(shí)現(xiàn)飛機(jī)大戰(zhàn)

    pygame實(shí)現(xiàn)飛機(jī)大戰(zhàn)

    這篇文章主要為大家詳細(xì)介紹了pygame實(shí)現(xiàn)飛機(jī)大戰(zhàn),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • Python 用NumPy創(chuàng)建二維數(shù)組的案例

    Python 用NumPy創(chuàng)建二維數(shù)組的案例

    這篇文章主要介紹了Python 用NumPy創(chuàng)建二維數(shù)組的案例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • python猜數(shù)字小游戲?qū)崿F(xiàn)代碼

    python猜數(shù)字小游戲?qū)崿F(xiàn)代碼

    大家好,本篇文章主要講的是python猜數(shù)字小游戲?qū)崿F(xiàn)代碼,感興趣的同學(xué)趕快來看一看吧,對(duì)你有幫助的話記得收藏一下,方便下次瀏覽
    2022-01-01
  • python爬蟲爬取指定內(nèi)容的解決方法

    python爬蟲爬取指定內(nèi)容的解決方法

    這篇文章主要介紹了python爬蟲爬取指定內(nèi)容,爬取一些網(wǎng)站下指定的內(nèi)容,一般來說可以用xpath來直接從網(wǎng)頁上來獲取,但是當(dāng)我們獲取的內(nèi)容不唯一的時(shí)候我們無法選擇,我們所需要的、所指定的內(nèi)容,需要的朋友可以參考下
    2022-06-06
  • OpenCV半小時(shí)掌握基本操作之角點(diǎn)檢測

    OpenCV半小時(shí)掌握基本操作之角點(diǎn)檢測

    這篇文章主要介紹了OpenCV基本操作之角點(diǎn)檢測,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-09-09
  • python 標(biāo)準(zhǔn)庫原理與用法詳解之os.path篇

    python 標(biāo)準(zhǔn)庫原理與用法詳解之os.path篇

    os.path模塊主要用于文件的屬性獲取,在編程中經(jīng)常用到,本文將帶你熟悉這個(gè)模塊并掌握它的用法,感興趣的朋友跟小編來看看吧
    2021-10-10
  • 解決python讀取幾千萬行的大表內(nèi)存問題

    解決python讀取幾千萬行的大表內(nèi)存問題

    今天小編就為大家分享一篇解決python讀取幾千萬行的大表內(nèi)存問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-06-06
  • python中的不可變數(shù)據(jù)類型與可變數(shù)據(jù)類型詳解

    python中的不可變數(shù)據(jù)類型與可變數(shù)據(jù)類型詳解

    探尋python的數(shù)據(jù)類型是否可變,也可以更好的理解python對(duì)內(nèi)存的使用情況,下面這篇文章主要給大家介紹了關(guān)于python中不可變數(shù)據(jù)類型與可變數(shù)據(jù)類型的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2018-09-09

最新評(píng)論