[學習筆記] React App and Django restful Api Using MongoDB with JWT authentication (一)
最近想學一點新東西來重溫寫程式的快樂,
就選了比較熱門的framework和程式語言,
大致會用到的技能樹有:
前端:React +Material UI + Redux
後端:Python + Django +MongoDB+ Restful API+ JWT authentication
邊學邊寫了一個小專案:餐酒館系統(MyBistro App)
其本上不是什麼教學,
只是個人練習記錄而己,
所以可能會有一些錯誤也没法回答没遇到的狀況或問題,
Source code 會更新到個人的GitHub,
(技術文件會放在GitHub Pages上)
目前的進度是V1.0-alpha,
功能還很陽春,
但前後端已經可以串接,
本篇先介紹已完成的項目,
安裝說明放到下面。
簡單的登入畫面:
註册新使用者畫面:
登入後的首頁:
側邊的選單在小螢幕時可以自動隱藏,點擊上方的小圖示可以展開。
選單/前台/菜單,會讀取資料庫的菜單,有篩選和排序功能。
菜單圖片放大
可以切換畫面的主題樣式(theme)
主題樣式:botanical
主題樣式:dark
測試頁面1:Call API
測試頁面4:選單練習
Error handling:
安裝說明:
前端App下載點:(or use git clone)
https://github.com/vuzzil/react-my-app/archive/refs/tags/v1.0-alpha.zip
安裝:
1.解壓縮至工作目錄:ex:D:\working\react-my-app
2.安裝指令: 需要 npm (請先安裝)
$>npm install
會自動安裝package.json檔內所需要相依的packages,
--------------------------------------------------------
啟動前端app指令:
$>npm start
後端App下載點:(or use git clone)
https://github.com/vuzzil/mybistro/archive/refs/tags/v1.0-alpha.zip
安裝:
1.解壓縮至工作目錄:ex:D:\working\python\mybistro
2.安裝指令: 需要 pipenv (請先安裝 ,指令: $>pip3 install pipenv)
$>pipenv install
安裝時建立虛擬環境,並自動安裝Pipfile檔內所需要相依的packages,
一般虛擬環境會安裝到類似以下路徑 :
C:\Users\yourname\.virtualenvs\mybistro-YTiYePRb
3.新增 .env檔 到專案根目錄(=1.工作目錄)
將Django SECRET_KEY和DB連線資料加到此檔:
SECRET_KEY = 'django-insecure-atvkjkx0z1xic5a69%m$h6mi9m1n+)_b+qs(4q63w_u!c)#%45' DATABASE_HOST = 'localhost' DATABASE_PORT = '27017' DATABASE_USERNAME = 'db_username' DATABASE_PASSWORD = 'db_password'
註:SECRET_KEY在Django創建新project時會産生:
(以上列的只是舉例,測試可用,正式請重新産生。)
$>django-admin startproject bistro_backend . (.代表目前目錄當根目錄,才不會又多一層目錄)
--------------------------------------------------------------------------------
啟動後端Server指令:
$>pipenv shell (進入shell)
(mybistro-YTiYePRb) D:\working\python\mybistro\>python manage.py runserver
資料庫:MongbDB 下載安裝Community版(5.0.x)即可。
可順便安裝MongoDB Compass,有圖型化介面可用。
Comments
Post a Comment