在這篇文章中,我將解釋 Rest Framework。在討論技術細節之前,讓我們先來談談什麼是 Rest Framework。
Rest Framework 是一個高階框架,可讓我們為行動應用程式、Web 應用程式和桌面應用程式編寫通用後端。例如,您可以在行動應用程式和 Web 應用程式中使用使用 Rest Framewok 編碼的後端伺服器。
您可以使用 Rest Framework 結合 Angular、React、Vue 等前端技術來開發應用程式。由於 Rest Framework 在程式設計中以通用結構提供回應,因此您可以將這些輸出與 Angular 或 React 一起使用。那麼這些輸出有哪些類型呢?當然還有像 JSON 這樣的結構。當然,您也可以選擇將這些輸出以不同的結構傳送到前端。現在讓我們繼續編碼
建立專案
1) django-admin startproject projeName
我們已經創建了我們的專案。現在讓我們運行我們的專案。
2) python manage.py runserver
然後,讓我們編寫必要的命令來在資料庫中建立必要的表。
3) python manage.py 遷移
別忘了將我們建立的應用程式加入settings.py 檔案下的INSTALLED_APPS 目錄中。
一切都好。現在我們可以繼續執行其餘框架的必要步驟。
要在我們的電腦上安裝 Rest Framework,我們需要在終端機中執行以下命令。
1) pip install djangorestframework
例如;
已安裝的應用程式 = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'rest_framework',
'POSTAPP',
]
現在我們已經新增了Rest框架,我們可以開始建立API了。為此,我們需要在我們創建的應用程式資料夾中建立一個名為 API 的資料夾和一些檔案。讓我們加入這些檔案:
您的_項目/
api/
init.py
視圖.py
urls.py
序列化器.py
透過 ** init.py** 文件,我們顯示該資料夾是一個 Python 模組
views.py ** 文件是我們將編寫類別或函數的文件,這些類別或函數將提供我們將發送給傳入請求的答案。
**urls.py 文件是我們將在其中設定 API url 的文件,您可以從 Django 的結構中猜測。
serializers.py 文件是我們將在其中編寫結構的文件,這些結構會將傳入的查詢集轉換為我們想要的格式(例如 JSON)。我們將逐步詳細介紹這一點。
首先,讓我們轉到專案主資料夾中準備好的 urls.py 文件,並根據我們建立的 API 資料夾定義 url 路徑。
urlpatterns = [
路徑('admin/', admin.site.urls),
路徑("api/post/",include("YOUR_PROJECT.api.urls",namespace="post")),
]
我們已經有一個管理路徑。我們還新增了一個新路徑 api/post。使用 Include 方法,我們將傳入 api/post/ 的請求重定向到我們建立的 API 資料夾中的 url 檔案。
現在,讓我們快速為我們創建的帖子編寫一個模型。讓我們來看看 YOUR_PROJECT 資料夾中的 models.py 檔案。
類別 PostModel(models.Model):
作者 = models.ForeignKey(User,on_delete=models.CASCADE)
標題 = models.CharField(max_length=50)
內容 = models.TextField()
Draft = models.BooleanField(default=False)
ModifiedDate = models.DateTimeField(editable=False)
建立模型後,讓我們在終端機中編寫必要的程式碼以在資料庫中建立表。
python manage.py makemigrations
使用這些程式碼,我們建立了在資料庫中建立表格所需的 Python 檔案。我們將運行以下命令來建立表。
*python manage.py 遷移 *
現在讓我們來看看我們建立的 YOUR_PROJECT 目錄下 api 資料夾中的空 urls.py 檔案。
來自 django.urls 導入路徑
從 .views 導入 YourProjectAPIView
app_name="貼文"
urlpatterns = [
路徑(“列表/”,YourProjectAPIView.as_view(),name =“your_project”),
]
首先,我們使用 app_name=”post” 指定應用程式名稱。
現在,我們嘗試匯入尚未建立的視圖,並嘗試根據我們的路徑使用它們。讓我們立即建立視圖,其名稱已寫入 YOUR_PROJECT/api 目錄下的views.py 檔案中。
首先,讓我們建立一個視圖,在該視圖中我們將使用 JSON 結構的請求發送資料庫中的所有貼文。
從 POSTAPP.models 導入 PostModel
從rest_framework.generics導入ListAPIView
類別 PostListAPIView(ListAPIView):
serializer_class = PostSerializer
queryset = PostModel.objects.all()
讓我們解釋一下我們在這裡做了什麼。我們使用 ListAPIView 類別建立了一個視圖,該類別為 Rest Framework 中的清單流程做好了準備。首先,我們確定將使用查詢集變數傳回哪個模型。我們需要指定序列化器類,它將序列化來自該模型的數據,即查詢集。畢竟我們不會向對方發送查詢集。我們將發送序列化的 JSON 物件。將查詢集轉換為 JSON 物件的結構將是我們將要建立的序列化器。
現在,我在serializer_class變數中建立了一個名為PostSerializer的序列化器。我們將在同一目錄中的serializers.py 檔案中建立此序列化器。現在讓我們來創建它。
從rest_framework匯入序列化器
類別 YourProjectSerializer(serializers.ModelSerializer):
類元:
模型 = PostModel
fields = ["作者","標題","內容",'草稿','修改日期']
以上是什麼是 Django Rest 框架?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本教程演示如何使用Python處理Zipf定律這一統計概念,並展示Python在處理該定律時讀取和排序大型文本文件的效率。 您可能想知道Zipf分佈這個術語是什麼意思。要理解這個術語,我們首先需要定義Zipf定律。別擔心,我會盡量簡化說明。 Zipf定律 Zipf定律簡單來說就是:在一個大型自然語言語料庫中,最頻繁出現的詞的出現頻率大約是第二頻繁詞的兩倍,是第三頻繁詞的三倍,是第四頻繁詞的四倍,以此類推。 讓我們來看一個例子。如果您查看美國英語的Brown語料庫,您會注意到最頻繁出現的詞是“th

本文解釋瞭如何使用美麗的湯庫來解析html。 它詳細介紹了常見方法,例如find(),find_all(),select()和get_text(),以用於數據提取,處理不同的HTML結構和錯誤以及替代方案(SEL)

Python 提供多種從互聯網下載文件的方法,可以使用 urllib 包或 requests 庫通過 HTTP 進行下載。本教程將介紹如何使用這些庫通過 Python 從 URL 下載文件。 requests 庫 requests 是 Python 中最流行的庫之一。它允許發送 HTTP/1.1 請求,無需手動將查詢字符串添加到 URL 或對 POST 數據進行表單編碼。 requests 庫可以執行許多功能,包括: 添加表單數據 添加多部分文件 訪問 Python 的響應數據 發出請求 首

處理嘈雜的圖像是一個常見的問題,尤其是手機或低分辨率攝像頭照片。 本教程使用OpenCV探索Python中的圖像過濾技術來解決此問題。 圖像過濾:功能強大的工具圖像過濾器

PDF 文件因其跨平台兼容性而廣受歡迎,內容和佈局在不同操作系統、閱讀設備和軟件上保持一致。然而,與 Python 處理純文本文件不同,PDF 文件是二進製文件,結構更複雜,包含字體、顏色和圖像等元素。 幸運的是,借助 Python 的外部模塊,處理 PDF 文件並非難事。本文將使用 PyPDF2 模塊演示如何打開 PDF 文件、打印頁面和提取文本。關於 PDF 文件的創建和編輯,請參考我的另一篇教程。 準備工作 核心在於使用外部模塊 PyPDF2。首先,使用 pip 安裝它: pip 是 P

本教程演示瞭如何利用Redis緩存以提高Python應用程序的性能,特別是在Django框架內。 我們將介紹REDIS安裝,Django配置和性能比較,以突出顯示BENE

自然語言處理(NLP)是人類語言的自動或半自動處理。 NLP與語言學密切相關,並與認知科學,心理學,生理學和數學的研究有聯繫。在計算機科學

本文比較了Tensorflow和Pytorch的深度學習。 它詳細介紹了所涉及的步驟:數據準備,模型構建,培訓,評估和部署。 框架之間的關鍵差異,特別是關於計算刻度的


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

Dreamweaver CS6
視覺化網頁開發工具

禪工作室 13.0.1
強大的PHP整合開發環境

SAP NetWeaver Server Adapter for Eclipse
將Eclipse與SAP NetWeaver應用伺服器整合。

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

Atom編輯器mac版下載
最受歡迎的的開源編輯器