一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務器之家 - 腳本之家 - Python - Django rest framework基本介紹與代碼示例

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

2021-01-09 00:23HeatDeath Python

這篇文章主要介紹了Django rest framework基本介紹與代碼示例,簡單敘述了rest framework的一些用處,可選擇的相關軟件包,然后分享了一個簡單的模型支持的API的例子,小編覺得還是挺不錯的,具有一定借鑒價值,需要的朋友可以參考下

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

Django REST框架是構建Web API的強大而靈活的工具包。

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

  • Web瀏覽的API是您的開發(fā)人員的巨大的可用性勝利。
  • 驗證策略包括OAuth1a和OAuth2的包。
  • 支持ORM和非ORM數(shù)據(jù)源的序列化。
  • 如果不需要功能更強大的功能,可以自定義一切 - 只需使用基于功能的常規(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 - 改進的HTML顯示過濾。
  • django-guardian(1.1.1+) - 對象級權限支持。

Installation

Install using pip, including any optional packages you want…

?
1
2
3
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.

?
1
2
3
4
INSTALLED_APPS = (
  ...
  'rest_framework',
)

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

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

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

Example

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

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

REST框架API的任何全局設置都保存在名為REST_FRAMEWORK的單個配置字典中。 首先將以下內(nèi)容添加到settings.py模塊中:

?
1
2
3
4
5
6
7
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)準備好創(chuàng)建我們的API了。 這是我們項目的根urls.py模塊:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
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
 
#路由器提供了一種自動確定URL conf的簡單方法。
router = routers.DefaultRouter()
router.register(r'users', UserViewSet)
 
#使用自動網(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)建和刪除用戶。

總結

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

原文鏈接:http://blog.csdn.net/heatdeath/article/details/71105124

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 黄 在线播放 | 国产精品美女久久久久 | 美女自插 | chinese男男gayxxx chinese老头和老太交hd | 日本精品一区二区三区 | 美女逼逼喷水 | 国产一区二区三区久久精品 | 久久精品久久久久 | 教师系列 大桥未久在线 | 美女福利网站 | 福利入口在线观看 | swag最新正在播放 | 久久久无码精品亚洲欧美 | swag最新正在播放 | 四虎影视库永久在线地址 | 亚洲第一综合天堂另类专 | 92精品国产成人观看免费 | 香蕉视频在线观看网址 | 精品国产中文字幕在线视频 | 免费一级生活片 | 男人综合网 | 国产亚洲一区二区三区 | 第一次破苞h | 欧美一级艳片视频免费观看 | 91视频国产精品 | 国产成人精品高清在线 | 王晶经典三级 | 青草国内精品视频在线观看 | 美女流白浆 | 国产二区三区 | 91九色jiuse006| 黑人与欧洲女子性大战 | 国产国拍亚洲精品av | 亚洲欧美优优色在线影院 | 福利视频久久 | 呜呜别塞了啊抽插 | 男男同志videos | 暖暖免费高清完整版观看日本 | 国产偷窥女洗浴在线观看亚洲 | 国产精品 色 | 国产成+人+综合+欧美 亚洲 |