flask-adminlte后台管理系统脚手架

引言

继续接着上次的话题,上周整理出来的flask-rest脚手架,用于快速构建Restful API。虽然后端的代码量很少,但前端会变得很重,所以总体开发速度并不算太快,不太适合小型项目。
于是又整理了一套flask-adminlte脚手架,目标是用较传统的方式,减少整体的代码量,加快开发速度,以应对一些比较极端的需求。大体估算,开发时间可以做到SpringBoot全家桶的30%左右。

源码

https://github.com/xiiiblue/flask-rest-sample

简介

flask-adminlte-handler是一个Python环境下的WEB后台管理系统脚手架,目标是用极少量的代码,快速构建小型WEB应用。请勿在大中型项目中进行尝试。

  1. 使用较传统的重后端+轻前端的方式,降低总体代码量
  2. Web框架使用Flask,默认Jinja模版
  3. ORM框架使用Peewee
  4. 前端套用基于BootStrap的AdminLTE模板

系统截图

  • 登录页

    flask-adminlte后台管理系统脚手架_第1张图片

  • 主页

    flask-adminlte后台管理系统脚手架_第2张图片

  • 编辑界面

    flask-adminlte后台管理系统脚手架_第3张图片

  • 查询界面

    flask-adminlte后台管理系统脚手架_第4张图片

第三方依赖

  • peewee
  • pymysql
  • flask
  • flask-script
  • flask-wtf
  • flask-login

环境配置

venv虚拟环境安装配置

sudo pip3 install virtualenv
virtualenv venv
. venv/bin/activate

第三方依赖安装

pip3 install -r requirements.txt

系统参数配置

  1. 编辑config.py, 修改SECRET_KEY及MySQL数据库相关参数
SECRET_KEY = os.environ.get('SECRET_KEY') or 'your-secret'
DB_HOST = '127.0.0.1'
DB_USER = 'foobar'
DB_PASSWD = 'foobar'
DB_DATABASE = 'foobar'
  1. 编辑log-app.conf,修改日志路径
args=('/path/to/log/flask-rest-sample.log','a','utf8')

数据库初始化

  1. 自动建表
    直接运行python3 models.py

  2. 插入管理员用户(默认admin/admin)

INSERT INTO `user` (`id`, `username`, `password`, `fullname`, `email`, `phone`, `status`)
VALUES
    (1, 'admin', 'pbkdf2:sha1:1000$Km1vdx3W$9aa07d3b79ab88aae53e45d26d0d4d4e097a6cd3', '管理员', '[email protected]', '18612341234', 1);

启动应用

nohup ./manage.py runserver 2>&1 &
或
./run_app_dev.py (仅限测试)

项目目录结构

flask-adminlte后台管理系统脚手架_第5张图片
  • /app/auth 用户认证相关代码
  • /app/main 主要功能点相关代码
  • /app/static JS、CSS等静态文件
  • /app/template 页面模版
  • /app/models.py Peewee模型
  • /app/utils.py 工具模块
  • /conf 系统参数及日志配置

相关学习文档

  • http://flask.pocoo.org
  • https://flask-login.readthedocs.io
  • https://flask-script.readthedocs.io
  • https://flask-wtf.readthedocs.io
  • http://docs.peewee-orm.com
  • https://almsaeedstudio.com/preview

你可能感兴趣的:(flask-adminlte后台管理系统脚手架)