Backend-DRF-建立純淨版DRF項目

更新於 發佈於 閱讀時間約 5 分鐘

對於想透過DRF來建立RESTfull API的初學者,建立純淨版的項目將有助於了解 DRF 的核心概念,並適合在簡單應用中快速搭建 RESTful API。

相關 settings 設定如下:
INSTALLED_APPS = [

# 'django.contrib.admin',

# 'django.contrib.auth',

# 'django.contrib.contenttypes',

# 'django.contrib.sessions',

# 'django.contrib.messages',

'django.contrib.staticfiles',

'rest_framework' # 新增 rest_framework app

]

MIDDLEWARE = [

'django.middleware.security.SecurityMiddleware',

# 'django.contrib.sessions.middleware.SessionMiddleware',

'django.middleware.common.CommonMiddleware',

'django.middleware.csrf.CsrfViewMiddleware',

# 'django.contrib.auth.middleware.AuthenticationMiddleware',

# 'django.contrib.messages.middleware.MessageMiddleware',

'django.middleware.clickjacking.XFrameOptionsMiddleware',

]

TEMPLATES = [
{

'BACKEND': 'django.template.backends.django.DjangoTemplates',

'DIRS': [],

'APP_DIRS': True,

'OPTIONS': {

'context_processors': [

'django.template.context_processors.debug',

'django.template.context_processors.request',

# 'django.contrib.auth.context_processors.auth',

# 'django.contrib.messages.context_processors.messages',],},},]


實際DRF在做頁面展示時,會使用到request.user,而一般請求情況下並不存在此使用者訊息,DRF則會去調用默認匿名使用者,在rest_framework.request.Request內:

def _not_authenticated(self):

self._authenticator = None



if api_settings.UNAUTHENTICATED_USER: # 調用匿名使用者,由於我們剔除了相關app,故讀取會報錯

self.user = api_settings.UNAUTHENTICATED_USER()

else:

self.user = None



if api_settings.UNAUTHENTICATED_TOKEN:

self.auth = api_settings.UNAUTHENTICATED_TOKEN()

else:

self.auth = None

api_settings相當於在settings內調用REST_FRAMEWORK,所以我們僅需要在settings內設定:

REST_FRAMEWORK = {

"UNAUTHENTICATED_USER" : None,

}

即完成純淨版項目設定。

留言
avatar-img
留言分享你的想法!
avatar-img
YO!全端之路 😤😤😤
0會員
2內容數
一位離開半導體業的資料科學家, 在全端掙扎的日誌
你可能也想看
Thumbnail
我們在「【🔒 Python API框架篇 - FastAPI】Ep.1 啟航」稍微帶大家認識了FastAPI這個框架, 它讓我們快速的架設一個API服務, 並提供了許多標準化功能, 只要照著規範走就能快速的開發出來, 但開發出來之後, 我們會希望開放給一般使用者使用, 而一般使用者較能夠操作的媒介
Thumbnail
我們在「【🔒 Python API框架篇 - FastAPI】Ep.1 啟航」稍微帶大家認識了FastAPI這個框架, 它讓我們快速的架設一個API服務, 並提供了許多標準化功能, 只要照著規範走就能快速的開發出來, 但開發出來之後, 我們會希望開放給一般使用者使用, 而一般使用者較能夠操作的媒介
Thumbnail
這篇文章提供一個逐步指南,教導讀者如何使用VB.Net和ASP.NET Web Forms建立一個簡單的Web應用程式。從安裝開發環境到撰寫程式碼、執行與測試,步驟清晰易懂,適合初學者學習。
Thumbnail
這篇文章提供一個逐步指南,教導讀者如何使用VB.Net和ASP.NET Web Forms建立一個簡單的Web應用程式。從安裝開發環境到撰寫程式碼、執行與測試,步驟清晰易懂,適合初學者學習。
Thumbnail
React(也稱為React.js或ReactJS)是一個自由及開放原始碼的前端JavaScript工具庫,用於基於UI組件構建使用者介面。本章節會帶你初步建立環境並教導如何做使用。
Thumbnail
React(也稱為React.js或ReactJS)是一個自由及開放原始碼的前端JavaScript工具庫,用於基於UI組件構建使用者介面。本章節會帶你初步建立環境並教導如何做使用。
Thumbnail
※ 必備開發環境: Node.Js環境。 Npm或yarn套件管理工具。 Docker倉庫套件:可以快速建立MySQL的資料庫。 下載 Docker Desktop:Docker Desktop for Windows。 ※ Docker快速建立MySQL資料庫,使用步驟: 準備Dock
Thumbnail
※ 必備開發環境: Node.Js環境。 Npm或yarn套件管理工具。 Docker倉庫套件:可以快速建立MySQL的資料庫。 下載 Docker Desktop:Docker Desktop for Windows。 ※ Docker快速建立MySQL資料庫,使用步驟: 準備Dock
Thumbnail
※ Schema Design 小測驗 ● 測驗一:電商平台是後端開發最基本的例子 幫電商平台設計一個SQL Database Schema,需要保存商品資料、顧客資料、訂單資料… 輔助設計Schema的工具: https://drawsql.app 優點: 網頁版,方便使用。 功能
Thumbnail
※ Schema Design 小測驗 ● 測驗一:電商平台是後端開發最基本的例子 幫電商平台設計一個SQL Database Schema,需要保存商品資料、顧客資料、訂單資料… 輔助設計Schema的工具: https://drawsql.app 優點: 網頁版,方便使用。 功能
Thumbnail
REST(REpresentational State Transfer)是一種WWW的Web架構,常被使用於JSON或XML的Web服務,而符合REST原則的系統就稱為RESTful。REST API(RESTful API)是一種符合REST的API應用。 方法說明 GET:向伺服器取得
Thumbnail
REST(REpresentational State Transfer)是一種WWW的Web架構,常被使用於JSON或XML的Web服務,而符合REST原則的系統就稱為RESTful。REST API(RESTful API)是一種符合REST的API應用。 方法說明 GET:向伺服器取得
Thumbnail
Introduction 如果以 python 為後端,那最常見而且我覺得也比較穩定的框架是 django 和 flask 適合 flask 的使用場景是如果你只是簡單想要一個 py 檔可以做為一個 api 被前端呼叫使用,不想要太多其他設定,最好是兩三行 code 就建立一個後端,那就用 flas
Thumbnail
Introduction 如果以 python 為後端,那最常見而且我覺得也比較穩定的框架是 django 和 flask 適合 flask 的使用場景是如果你只是簡單想要一個 py 檔可以做為一個 api 被前端呼叫使用,不想要太多其他設定,最好是兩三行 code 就建立一個後端,那就用 flas
Thumbnail
Restful API 其實就是開放一個 EndPoit 的網路接口給其他人使用,並將要做的事情封裝在該接口內,不需要知道真實運作狀況,只要得到答案即可。
Thumbnail
Restful API 其實就是開放一個 EndPoit 的網路接口給其他人使用,並將要做的事情封裝在該接口內,不需要知道真實運作狀況,只要得到答案即可。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News