KD's Tech Blog

Hi, 我是 KD Chang 張凱迪,我在這書寫我的軟體開發/程式設計技術筆記 | KD 技術部落格

Django「一對一」、「一對多」、「多對多」關聯入門教學筆記 | 學習筆記


前言當你在學 Django 或資料庫設計時,常會遇到「一對一」、「一對多」、「多對多」這三種關聯(Relationship)。這些是資料庫中表與表之間的關係,下面用簡單的例子幫你搞懂它們的差異: 一對一(One-to-One)概念:一個資料只對應另一個資料,彼此之間是唯一配對的關係。 例子:每個人都有一張身份證 → 一個人對應一張身份證,一張身份證只對應一個人。 Django 實作:cla......

Django CRUD(不使用 ModelForm)入門教學筆記 | 學習筆記


前言在 Django 中,ModelForm 提供了一個快速建立表單與驗證的工具,但在某些情境下,我們可能希望自己掌控表單結構與驗證流程。這篇筆記將示範如何不依賴 ModelForm,手動實作一套 CRUD 系統,幫助你更深入理解 Django 表單處理的基本原理。 我們將製作一個簡單的「書籍管理系統」,支援新增(Create)、讀取(Read)、更新(Update)與刪除(Delete)書......

FastAPI 入門教學筆記:打造現代 Python Web API 的入門教學筆記 | 學習筆記


什麼是 FastAPI?FastAPI 是一個現代、快速(高效能)、基於 Python 3.7+ 類型提示的 Web 框架,用於建構 API。其核心優勢包含: 自動生成文件:內建 OpenAPI 與 Swagger UI 支援 高效能:基於 Starlette 和 Pydantic,效能可媲美 Node.js 與 Go 開發快速:強大的 IDE 支援與自動補全功能 自動驗證與序列化:透過 ......

Python 指定使用 OpenSSL 介紹入門教學筆記 | 學習筆記


前言如果 python -c "import ssl; print(ssl.OPENSSL_VERSION)" 顯示的是 LibreSSL 2.8.3,這表示 Python 並沒有使用 Homebrew 安裝的 OpenSSL,而是使用了系統預設的 LibreSSL。這通常發生在 Python 編譯時,沒有正確地連結到 Homebrew 的 OpenSSL 庫。 為了解決......