在繼續製作 API 端點前,先來介紹 DRF 中撰寫 API 的兩種風格,Viewsets 及 APIView。在 Django 中 view 的寫法有分 FB...
前言 前面我們有使用 Django 與 DRF 的一些基礎功能了,但其實有些功能上不是太方便,例如 Admin 系統的設定都要自己打,獲釋每次使用 Django...
接下來要實作的部分是更新 user 的 API 端點。 Update User API 進入 user/serializers.py,在UserSerializ...
前言 昨天講了一個比較複雜的操作,今天我們來做一點點輕鬆的,順便當作複習前面的,今天要的是把分類相關的功能實作完成吧。 Serializer 首先是序列化讓我們...
在繼續實作之前,想先介紹一個實用的知識,就是 HTTP 代碼,這面試很常出現 XD。在剛剛的 API 測試中,回應區可以看到許多 HTTP code,像是創建...
前言 昨天我們已經模擬了幾個新增欄位的情境,今天我們要來模擬如何在欄位中加入不能指定一次性預設值的欄位吧! 今天我們要模擬的情境是,假設今天需要加入一個「分類」...
接下來的實作大多會是以創建 serializer -> 創建 view -> 增加 url 的流程進行,今天預計會把驗證功能做完,開始嘍。 驗證功能...
前言 前兩天我們學會了如何做篩選,今天讓我們來看看如何在已存在的 Model 中加上欄位吧!雖然前面已經有在 Task Model 中加上 is_finish...
在實作之前,先來介紹一下驗證 Authentication vs Authorization 在介紹前先與另一個相似字 Authorization(授權) 做一...
前言 昨天我們說明了如何做了篩選,但其實只講了一部分,我們今天繼續來做跟篩選相關的吧! 使用 FilterSet 昨天我們都是直接在 ViewSet 中設定要篩...
今天來進行 user 端點的製作。 Create User API 以功能來說跟之前的專案很類似,差別只在於介面,除此之外,API 還會加上授權的功能。首先,先...
前言 昨天我們學了怎麼實作排序與搜尋,但搜尋是針對多了欄位進行模糊匹配。如果想要針對特定欄位的話就需要使用篩選(Filter) 安裝 Filter 套件 讓我們...
開始來做 API 吧! User model 這邊的 User model 跟上一個專案相同,所以可以參考之前的程式碼。 記得要加在 core/models....
前言 昨天我們學會怎麼做分頁了,今天我們要來學習怎麼在 API 實作搜尋與排序,方便使用者可以找到他想找到的資料。 排序 首先我們來做排序功能,讓我們打開 se...
在網路的世界裡傳遞資訊時所使用的資料格式有很多種,像是 JSON, XML, CSV files...等等。而本次 API 會用到的資料格式為 JSON。 JS...
前言 昨天我們為我們的 API 加上文件了,今天讓我們來實作分頁這個功能吧! 先說說什麼是分頁,分頁的意思是當使用者請求列表的 API 時,一次只給他一部份並讓...
此次 Django REST framework 預計會做一個簡單的 RESTful API,包含基本的 User,使用 Token Authenticatio...
前言 前面我們已經寫了幾個 API 昨天我們也為了實現 JWT 的功能而使用了套件內的 ViewSet。目前為止我們還可以透過文件或是寫程式的記憶力去知道 AP...
今天來簡單介紹 REST 架構有什麼要求。 REST 架構 REST 架構有以下規定: 客戶端-伺服器端:將客戶端(發送請求)與伺服器端(發送回應)分離,且...
前言 在 Day13 時我們介紹了 API 權限驗證,那時候我們用的身份驗證方法是 HTTP Basic 方法,但其實這個方法不常被使用在一般的驗證中,因為這樣...
結束了上一階段,現在要來介紹 Django RESR framework(DRF),DRF 是一個建立於 Django 用於製作 RESTful API 的框架...
前言 昨天我們已經利用了 Django 內建的權限系統,讓我們的 API 多了權限控管的功能。同時我們利用了內建的 Admin 系統測試我們建立好的帳號是否能正...
在設計網頁時,很難一次就到完美或完全符合需求(神人例外),所以先求有再求好,網頁會動了再將程式碼變得好看一些,這就是今天要做的事! template 優化 從這...
前言 前面我們已經建立了幾個 API 了,但目前的狀況是大家知道網址就能呼叫,完全沒有做控管,所以今天我們要來幫 API 加上權限吧! 建立使用者 要幫 API...
今天來新增修改資料的頁面! 別忘記啟動虛擬環境 新增 update view 進入 core/views.py 加入以下程式碼: # 其他程式碼 def u...
前言 昨天我們透過客製化 ViewSet 讓他在不同的 action 中回傳不同序列化,達到修改不同傳入傳出的格式。今天前端提了一個需求:「我想要有一個 API...
前言 昨天我們已經學習了如何客製化 Serializer 來調整回傳給前端與前端傳入的格式了,今天讓我們來學習如何調整 ViewSet,讓他使用不同的序列化吧!...
今天要來實作的是使用者註冊的功能,開始嘍~ 記得啟動虛擬環境! 使用者註冊 在設計 model 時,我們已經為 user 增加一些驗證機制,像 email...
今天來繼續完成其他的頁面。 記得啟動虛擬環境 創建 profile view 在創建畫面之前我們來建立相對應的 view,因為只打算顯示登入使用者的資料,所...
前言 昨天我們已經將 Tag 與 Task 關聯起來,並且讓我們可以透過 API 存放兩者的關係,但是這樣對前端來說不是太友善,讓我們調整一下序列化讓前端開心點...