校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > Python django中如何使用restful框架

Python django中如何使用restful框架

熱門標簽:大連crm外呼系統 洪澤縣地圖標注 百度地圖標注位置怎么修改 老人電話機器人 地圖標注視頻廣告 梅州外呼業務系統 北京電信外呼系統靠譜嗎 高德地圖標注是免費的嗎 無錫客服外呼系統一般多少錢

restful框架的使用

在使用django進行前后臺分離開發時通常會搭配django-rest-framework框架創建RESTful風格的接口API。框架介紹及版本要求可參考官方地址:https://www.django-rest-framework.org

本文以創建man包含namesex字段的API為實例學習django-rest-framework框架的使用。

主要包含下面5個步驟:

1.創建Django項目

2.創建ORM模型

3.加載Django REST Framework

4.序列化模型

5.創建加載數據的view和url

1.創建Django項目

創建django_rest

django-admin startproject django_rest

進入django_rest,創建虛擬環境env

virtualenv env

激活虛擬環境,并安裝django

source ./env/bin/activate

安裝 django

pip install django

創建rest_app

python manage.py startapp rest_app

注冊app,將app添加到INSTALLED_APPS

#setting.py

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'rest_app'
]

創建后臺admin賬戶用于管理

$ python manage.py createsuperuser

Username (leave blank to use 'root'):admin 
Email address: 
Password: 
Password (again): 
Superuser created successfully.

2.創建ORM模型

數據庫我們使用默認sqlite3 即可,如需要變更可在setting.py中databases配置。

修改我們/django_rest/models.py添加我們man的模型

#models.py

from django.db import models



# Create your models here.
class Man(models.Model):
    name = models.CharField(max_length=64)
    sex = models.CharField(max_length=64)

    def __str__(self):
        return self.name

做數據庫遷移

python manage.py makemigrations 
python manage.py migrate

將Man這個model注冊到我們的后臺,以便可以通過django的后臺做增刪查改,編寫admin.py如下

#admin.py
from django.contrib import admin
from .models import Man
# Register your models here.

admin.site.register(Man)  # 注冊Man到后臺

啟動django服務

python manage.py runserver

訪問 http://127.0.0.1:8000/admin/可以看到登錄界面,輸入密碼登錄

可以看到我們的rest_app下的模型man對象mans

我們添加一個那個男人lgd.ame

3. 加載Django REST Framework

安裝工具包

pip install djangorestframework

注冊rest_framework

#setting.py
INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'rest_app'
    'rest_framework' #注冊
]

4.序列化模型

序列化器會把我們的模型數據轉化(序列化)為json格式,這樣就能夠被請求了。同樣當有josn數據提交過來的時候,序列化器會將json數據轉換為模型供咋們使用。

我們在rest_app下創建文件serializer.py

我們要做三件事:

1.導入Man模型

2.導入序REST Framework序列化器

3.創建新的類將模型和序列化器鏈接起來

from rest_framework import serializers

from .models import Man

class Manserializer(serializers.HyperlinkedModelSerializer):
    class Meta:
        model = Man
        fields = ('name','sex')

5.創建加載數據的view和url

我們需要把序列化后的數據返回給瀏覽器,所以要做一下步驟:

1.通過不通的Man查詢數據庫

2.將查詢后的數據傳遞給序列化器,通過序列化器轉化為json

我們在rest_app/views.py編寫我們的視圖,ModelViewSet由rest_framework提供,包含了get、post方法

# views.py
from rest_framework import viewsets

from .serializers import ManSerializer
from .models import Man


class ManViewSet(viewsets.ModelViewSet):
    queryset = Man.objects.all().order_by('name')  #查詢結果給queryset
    serializer_class = ManSerializer     #對結果進序列化

在django_rest目錄下urls.py添加api路由

from django.contrib import admin
from django.urls import path, include

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('rest_app.urls')),
 ]

在rest_app目錄下創建urls.py添加視圖路由,通過rest_framework中router確保我們的請求到正確的動態資源。

from django.urls import include, path
from rest_framework import routers
from . import views

router = routers.DefaultRouter()
router.register(r'man', views.ManViewSet)   #路由到ManViewSet視圖

# Wire up our API using automatic URL routing.
# Additionally, we include login URLs for the browsable API.
urlpatterns = [
    path('', include(router.urls)), #使用router路由
    path('api-auth/', include('rest_framework.urls', namespace='rest_framework'))
]

最后我們來啟動服務,訪問http://127.0.0.1:8000/ 可以在瀏覽器查看到我們api信息

python manage.py runserver

訪問http://127.0.0.1:8000/man/ 來查看man資源

通過id來訪問api資源http://127.0.0.1:8000/man/1/

這樣我們一個基礎restful風格的API創建完成了。感覺關鍵點還是理解ModelViewSet和內置router不讀源碼很難知其所以然。

到此這篇關于Python django中如何使用restful框架的文章就介紹到這了,更多相關restful框架的使用內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • Python保姆式手把手帶你掌握異常的捕獲和處理
  • python Django的顯示個人信息詳解
  • python Django框架快速入門教程(后臺管理)
  • Python Django搭建文件下載服務器的實現
  • python中通過Django捕獲所有異常的處理

標簽:安慶 長春 洛陽 吉林 清遠 泉州 怒江 岳陽

巨人網絡通訊聲明:本文標題《Python django中如何使用restful框架》,本文關鍵詞  Python,django,中,如何,使用,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Python django中如何使用restful框架》相關的同類信息!
  • 本頁收集關于Python django中如何使用restful框架的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    日韩免费一区二区三区在线播放| 久久婷婷色综合| ●精品国产综合乱码久久久久| 丁香激情综合国产| 国产精品国产三级国产普通话蜜臀| 国产裸体歌舞团一区二区| 欧美激情中文字幕| 色成人在线视频| 免费精品视频在线| 国产午夜精品久久久久久久| www.综合网.com| 亚洲国产aⅴ天堂久久| 久久精品欧美一区二区三区麻豆| 韩国成人精品a∨在线观看| **性色生活片久久毛片| 欧美亚洲国产bt| 国产精品国产自产拍高清av王其| 国产精品99精品久久免费| 又紧又大又爽精品一区二区| 欧美精品乱人伦久久久久久| 国产传媒欧美日韩成人| 亚洲妇女屁股眼交7| 国产精品色噜噜| 欧美一区二区三区不卡| fc2成人免费人成在线观看播放| 亚洲综合一区在线| 国产精品成人在线观看| 久久蜜桃av一区精品变态类天堂 | xnxx国产精品| 91精品国产欧美一区二区成人| 波多野结衣一区二区三区| 麻豆精品国产传媒mv男同| 亚洲午夜在线电影| 亚洲欧美怡红院| 亚洲天堂成人网| 亚洲色图欧美在线| 亚洲制服丝袜在线| 一二三四区精品视频| 亚洲免费在线播放| 亚洲色图丝袜美腿| 91精品婷婷国产综合久久竹菊| 国产一区二区中文字幕| 成人午夜在线视频| 91免费国产在线| 欧美手机在线视频| 日韩精品自拍偷拍| 国产无遮挡一区二区三区毛片日本| 久久综合成人精品亚洲另类欧美 | 综合分类小说区另类春色亚洲小说欧美| 欧美大片日本大片免费观看| 久久综合久久综合亚洲| 亚洲欧洲精品一区二区三区不卡| 亚洲私人影院在线观看| 一区二区三区av电影| 免费成人你懂的| 成人蜜臀av电影| 欧美一级黄色录像| 中文字幕日韩一区| 久久狠狠亚洲综合| 99精品久久免费看蜜臀剧情介绍| 91麻豆产精品久久久久久| 日本大胆欧美人术艺术动态| 久久国产精品免费| 99精品久久只有精品| 成人av免费网站| 国产精选一区二区三区| 国产91精品露脸国语对白| 在线亚洲欧美专区二区| 欧美成人欧美edvon| 中文子幕无线码一区tr| 亚洲成人久久影院| 91麻豆精品秘密| 久久久久国产免费免费| 亚洲一区二区三区美女| 成人午夜私人影院| 久久婷婷色综合| 日韩成人一区二区三区在线观看| 97aⅴ精品视频一二三区| 日韩三级视频在线看| 亚洲乱码国产乱码精品精的特点| 日韩高清电影一区| 欧美午夜宅男影院| 亚洲精品国产视频| 高清不卡一区二区| 久久久综合视频| 日韩电影网1区2区| 欧美精品在欧美一区二区少妇| 一区二区三区不卡视频在线观看| 亚洲图片一区二区| 在线不卡a资源高清| 国产精品久久久久久妇女6080| 美女网站视频久久| 91在线播放网址| 久久精品视频网| 婷婷中文字幕综合| 一级日本不卡的影视| 色先锋aa成人| 日本不卡视频在线观看| 久久久久88色偷偷免费| 精品成人佐山爱一区二区| 亚洲成av人片在线观看| 日韩一区二区免费电影| 国产精品77777| 久久尤物电影视频在线观看| 不卡高清视频专区| 亚洲线精品一区二区三区| 91欧美一区二区| 亚洲一区在线观看免费观看电影高清 | 成人综合婷婷国产精品久久蜜臀| 国产精品乱码人人做人人爱| 欧美性淫爽ww久久久久无| 日日噜噜夜夜狠狠视频欧美人| 国产人伦精品一区二区| 欧美日韩一级片网站| www.日韩av| 日本特黄久久久高潮| 亚洲国产成人av网| 国产精品久久久99| 制服丝袜亚洲色图| 成人一级片网址| 久久精品国产亚洲a| 亚洲国产视频一区| 专区另类欧美日韩| 国产欧美一区二区精品婷婷| 欧美一卡在线观看| 91久久精品一区二区三区| 成人一区在线观看| 国产精品一区在线| 狠狠色狠狠色综合| 另类欧美日韩国产在线| 日韩电影在线一区二区三区| 亚洲制服丝袜在线| 国产精品夫妻自拍| 亚洲精品欧美综合四区| 国产日本欧洲亚洲| 自拍偷在线精品自拍偷无码专区 | 精品国产一区二区在线观看| 欧美性一级生活| 欧美xxx久久| 国产女人18毛片水真多成人如厕 | 欧美性一级生活| 欧美一卡二卡三卡| 国产精品久久国产精麻豆99网站| 亚洲欧洲日本在线| 久久激情综合网| 成人综合激情网| 欧美区一区二区三区| 91论坛在线播放| 99久久精品国产一区| 欧美福利电影网| 日本一区二区不卡视频| 亚洲欧美日韩国产手机在线| 夜色激情一区二区| 日日夜夜精品视频天天综合网| 色婷婷国产精品| 日韩女优视频免费观看| 1024成人网色www| 国产精品一卡二卡| 欧美一区二区视频在线观看| 中文字幕日韩一区| 国产成人一级电影| 日韩精品一区在线| 日本不卡一二三区黄网| 欧洲精品在线观看| 国产精品久久久久久久久免费相片| 日韩电影在线免费观看| 福利一区二区在线观看| 欧美va在线播放| 亚洲成在线观看| 国产成人av电影| 久久嫩草精品久久久精品一| 久久91精品久久久久久秒播| 欧美一级专区免费大片| 中文字幕第一页久久| 99免费精品在线| 精品欧美一区二区三区精品久久| 蜜臀av亚洲一区中文字幕| 99久久婷婷国产综合精品电影 | 日本一区二区免费在线 | 日韩理论片一区二区| 国产精品亚洲一区二区三区在线| 欧美一卡二卡三卡四卡| 日韩av一二三| 久久精品视频一区二区三区| 国产精品亚洲第一区在线暖暖韩国| 亚洲精品在线观| 在线免费观看视频一区| 婷婷成人激情在线网| 精品国产电影一区二区| jiyouzz国产精品久久| 中文字幕精品一区二区三区精品| 暴力调教一区二区三区| 亚洲午夜久久久久久久久电影网| 欧美一卡二卡三卡| 欧美最猛性xxxxx直播| 久久国产精品99久久人人澡| 亚洲国产毛片aaaaa无费看 | 亚洲一区二区综合| 久久久久九九视频| 日韩一区二区三区免费看|