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
「欸!這是在哪裡買的?求連結 🥺」 誰叫你太有品味,一發就讓大家跟著剁手手? 讓你回購再回購的生活好物,是時候該介紹出場了吧! 「開箱你的美好生活」現正召喚各路好物的開箱使者 🤩
Thumbnail
「欸!這是在哪裡買的?求連結 🥺」 誰叫你太有品味,一發就讓大家跟著剁手手? 讓你回購再回購的生活好物,是時候該介紹出場了吧! 「開箱你的美好生活」現正召喚各路好物的開箱使者 🤩
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
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News