【Python】Flask问答系统Demo项目

学习视频

我是跟着知了传课学的Flask,起初了解Flask还是GPT告诉我的,现在可以说用Flask做后端是真的方便!

https://www.bilibili.com/video/BV17r4y1y7jJ

项目结构与下载

tex 复制代码
FlaskOA(项目文件夹)
│  app.py
│  config.py
│  decorators.py
│  exts.py
│  models.py
│
├─blueprints
│  │  auth.py
│  │  forms.py
│  │  qa.py
│  │  __init__.py
│  │
│  └─__pycache__
│          auth.cpython-38.pyc
│          forms.cpython-38.pyc
│          qa.cpython-38.pyc
│          __init__.cpython-38.pyc
│
├─static
│  ├─bootstrap
│  │      bootstrap.4.6.min.css
│  │
│  ├─css
│  │      detail.css
│  │      index.css
│  │      init.css
│  │
│  ├─images
│  │      avatar.jpg
│  │
│  ├─jquery
│  │      jquery.3.6.min.js
│  │
│  └─js
│          register.js
│
└─templates
      base.html
      detail.html
      index.html
      login.html
      public_question.html
      register.html

https://download.csdn.net/download/qq_35516428/89421066

初始化数据库

在项目根目录,打开命令行,切换到Flask的Anaconda环境。使用flask db init对数据库初始化,使用flask db migrate对数据库进行迁移,使用flask db upgrade对数据库进行更新。其中flask db init只需要执行一次,其他两个命令需要在models.py发生改动时执行。

Demo截图

总结

整体来说这个项目的思路就是使用Flask并联合Jinja2模板渲染引擎,在GET请求Flask后端路径时返回响应html文件,同样在html文件中可以通过JavaScript等手段发送POST请求到后端进行提交form的操作。

这个项目让我对Flask加深了了解,比如说Flask中的蓝图,使用SQLAlchemy(flask_sqlalchemy包)操作数据库,使用flask_mail包发送邮件,使用装饰器做一个登录检测来屏蔽未登录用户的访问。还学到了Jinja2模板引擎,其中的模板继承等等对我来说很新奇的知识。

相关推荐
专业抄代码选手1 小时前
01|从手写 DOM 到虚拟 DOM:把 UI 从“操作”变成“描述”
前端·javascript·react.js
阿图灵1 小时前
OpenCV 阈值与模糊:全局/自适应阈值、Canny 边缘检测与三种模糊
图像处理·人工智能·python·opencv·计算机视觉·边缘检测
专业抄代码选手1 小时前
03|React 为什么需要协调:比较两棵树,而不是重建页面
前端·javascript·react.js
桃西西呀1 小时前
国内金价破 1000,「涨了多少」和「该买多少」是数学问题
人工智能·python·数据分析
灯澜忆梦1 小时前
【基于GO的Web开发11】gin获取URL‑Path 路径参数
前端·后端·golang·html·gin
王霸天1 小时前
GLB 文件太大怎么办?我把它从 47MB 压到 8MB,全程没碰命令行
前端·javascript·程序员
张人玉1 小时前
茶树 NeRF(Neural Radiance Fields,神经辐射场)三维重建与数据分析可视化系统——基于神经辐射场的茶树三维重建方法实现可视化大屏
python·数据挖掘·数据分析·echarts·three.js
脉动数据行情11 小时前
Python WebSocket 国内商品期货|螺纹钢 & 铁矿石实时行情监听
开发语言·python·websocket
胡萝卜术1 小时前
权限系统的四道防线:从数据库事务锁到操作级保护规则的完整设计
前端·javascript·面试
IMPYLH1 小时前
HTML 的 <legend> 元素
java·前端·html