ClassIS Readme

ClassIS

License 在這裏插入圖片描述在這裏插入圖片描述 在這裏插入圖片描述 在這裏插入圖片描述

ClassIS即Class Information Service,班級信息服務

  • 採用前後端分離的開發模式
  • 後端使用Flask框架,提供一些Restful風格的API接口
  • 前端使用React框架,並結合mobx進行狀態管理、選用antd作爲UI組件庫、使用axios實現Ajax
  • 提供班級通知、作業管理、班費管理、教材訂購、隨堂講義、文件管理、在線交流等功能
  • 界面見 wiki

項目背景

解決當前處理班級事務所面臨的問題,爲班級中信息的有效分發、獲取、處理、共享等提供便利。

安裝

1. 數據庫

①安裝MySQL和Redis

②運行數據庫服務

③創建數據庫並授予用戶權限

2. 前端程序編譯及部署

①安裝npm (6.1.0以上版本)

②進入到frontend/

npm i
npm run build

③將編譯後目錄frontend/dist/ 下的index.html和js文件放到服務器項目路徑下

3. 後端程序打包及部署

①安裝python (3.5.0以上版本) 虛擬環境

②進入到backend/

執行python setup.py sdist --formats=gztar 打包

③到服務器項目路徑下安裝 ClassIS 依賴到的包

pip install -r requirements

④安裝ClassIS

pip install ClassIS*.tar.gz

⑤參考 operations/env 配置系統環境

⑥實現數據庫遷移

創建遷移倉庫 python manage.py db init
創建遷移腳本 python manage.py db migrate
將遷移應用到數據庫 python manage.py db upgrade

⑦通過uwsgi或直接通過manage.py啓動程序

⑧operations/autosync.py在本地運行,用於將同步指定目錄下的文件同步到服務器(可選),使用時需要修改autosync.py裏的同步口令SYNC_TOKEN

4. 配置Nginx並運行

5. 完成

使用

使用瀏覽器訪問網站即可使用

參與貢獻方式

Open an issue or submit PRs.

開源協議

LGPL © SRE312

Project GitHub

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章