【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模板引擎,其中的模板继承等等对我来说很新奇的知识。

相关推荐
WHOVENLY23 分钟前
【javaScript】- 笔试题合集(长期更新,建议收藏,目前已更新至31题)
开发语言·前端·javascript
free-elcmacom33 分钟前
深度学习<4>高效模型架构与优化器的“效率革命”
人工智能·python·深度学习·机器学习·架构
指尖跳动的光40 分钟前
将多次提交合并成一次提交
前端·javascript
若梦plus1 小时前
JS之类型化数组
前端·javascript
若梦plus1 小时前
Canvas 深入解析:从基础到实战
前端·javascript
liliangcsdn1 小时前
python模拟beam search优化LLM输出过程
人工智能·python
若梦plus1 小时前
Canvas渲染原理与浏览器图形管线
前端·javascript
C_心欲无痕1 小时前
vue3 - 依赖注入(provide/inject)组件跨层级通信的优雅方案
前端·javascript·vue.js
王琦03182 小时前
Python 函数详解
开发语言·python