close
Flask 最常用的套件清單
這裡附上「用途」+「使用場合」,一看就知道什麼時候派上用場!
📚 Flask 常用套件整理
套件名稱 | 功能簡介 | 什麼時候用 |
---|---|---|
Flask-SQLAlchemy | 資料庫 ORM(物件關聯對應)工具 | 需要操作資料庫(像 SQLite、MySQL、PostgreSQL)時 |
Flask-Migrate | 資料庫版本控管(migration) | 當資料庫結構需要升級或修改時(配合 SQLAlchemy) |
Flask-Login | 管理登入、登出、使用者狀態 | 做會員系統、需要登入保護頁面時 |
Flask-WTF | 表單處理+表單驗證 | 做輸入表單時需要驗證內容、避免惡意攻擊 |
Flask-Bcrypt | 密碼加密與驗證 | 想要安全地保存使用者密碼(不能用明文!) |
Flask-Mail | 寄送 Email 功能 | 做註冊驗證信、忘記密碼寄信等功能時 |
Flask-RESTful | 快速開 API(RESTful API 支援) | 做後端 API 系統,給前端 App/Web 使用 |
Flask-CORS | 跨網域請求(Cross-Origin Resource Sharing)支援 | 後端 API 要給不同網域的前端存取時 |
Flask-Admin | 自動生成後台管理介面 | 想要快速有個可以管理資料的後台(不用自己刻) |
Flask-JWT-Extended | JWT(Json Web Token)驗證管理 | 要做無狀態(stateless)登入驗證時(多用在 API 登入) |
Flask-Uploads | 檔案上傳支援(圖片/文件) | 使用者上傳圖片、上傳資料時 |
Flask-Caching | 記憶體快取管理 | 提升網站速度,減少資料庫查詢 |
Flask-SocketIO | 即時通訊(WebSocket)支援 | 做聊天室、即時通知、線上遊戲 |
🎯 快速小分類
分類 | 常用套件 |
---|---|
資料庫 | Flask-SQLAlchemy、Flask-Migrate |
會員登入認證 | Flask-Login、Flask-Bcrypt、Flask-JWT-Extended |
表單處理 | Flask-WTF |
Flask-Mail | |
API/跨網域 | Flask-RESTful、Flask-CORS |
後台管理 | Flask-Admin |
即時通訊 | Flask-SocketIO |
快取優化 | Flask-Caching |
上傳功能 | Flask-Uploads |
🛠 安裝方式
這些套件都可以直接用 pip 安裝,例如:
pip install flask-sqlalchemy flask-migrate flask-login flask-wtf flask-bcrypt flask-mail flask-restful flask-cors flask-admin flask-jwt-extended flask-uploads flask-caching flask-socketio
(可以選擇安裝需要的,不一定一次裝這麼多。)
🚀 延伸補充
- Flask-Blueprints(內建功能,不用額外安裝):把網站功能模組化,方便管理大專案。
- Flask-Testing:寫自動化測試(Unit Test)用。
✨ 小結論
Flask 本身超輕量,但加上這些「周邊套件」後,
就可以快速打造小網站 → 大型專案 → REST API → 即時應用,超靈活!
全站熱搜