iT邦幫忙

2022 iThome 鐵人賽

DAY 7
0
自我挑戰組

web 應用開發筆記系列 第 7

[Day 7] 技能前哨站 - Web 後端大補帖(中)

  • 分享至 

  • xImage
  •  

前一篇說明了如何建立一個全端的專案,再來我們需要為 todo list 專案撰寫 API,為了做到這點,我們除了利用 Django 以外也可以使用 Flask 框架,Flask 屬於輕量型的 python 後端框架,很適合用來撰寫 RESTful API 應用。

準備

需安裝項目

  • python ENV
  • Flask framwork
  • Docker
  • MySQL container in Docker

安裝 python ENV 使用 Miniconda

前往 Miniconda 官網進行安裝及設定

安裝 Flask 並建立專案

安裝 flask:

$ pip install Flask

建立專案:
依照 官網教學 建立專案

安裝 Docker

前往 Docker 官網進行安裝及設定

安裝 MySQL 容器

抓取最新的 MySQL image

$ docker pull mysql:latest

啟動容器以及設定帳密

$ docker run -itd --name [contaniner name] -p 3306:3306 -e MYSQL_ROOT_PASSWORD=[mysql password] mysql

規劃

各項元件準備完畢後(API 框架、DB、啟動環境),就可以開始規劃後端 API 以及 DB 樣貌

API CRUD

todo list 需要幾種功能:
Create: 新增任務
Read: 讀取所有任務
Update: 更新單一任務內容
Delete: 刪除任務

API route

設計符合 RESTfull 規則的 API routes

  • /tasks [GET] : 取得所有任務資訊
  • /tasks [POST]:新增任務
  • /tasks/:task_id [GET]:讀取特定任務資訊
  • /tasks/:task_id [PATCH]:修改特定任務內容
  • /tasks/:task_id [DELETE]:刪除特定任務內容

DB ER model

Task Table:

  • name - 任務名稱
  • created_at - 建立時間
  • update_at - 更新時間
  • finish_at - 完成時間
  • delete_at - 刪除時間

目前的規劃基本上先以基本的任務建立功能來進行,秉持著敏捷開發(Agile)的精神可以在之後慢慢將功能放上去,之後的應用可以慢慢地接觸到這方面的知識,目前我們先理解並體會後端專案的建立以及開發即可。

規劃完成後只需要照著規劃完成 flask 程式即可,下一篇會實作完成以及串接前端讓整個專案能夠運行。


上一篇
[Day 6] 技能前哨站 - Web 後端大補帖(上)
下一篇
[Day 8] 技能前哨站 - Web 後端大補帖(下)
系列文
web 應用開發筆記30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言