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

相关推荐
ragnwang3 小时前
Notes: Python pybind11 import C++ module
开发语言·c++·python
王中阳Go3 小时前
后端转 Agent 岗面试怎么答:8 个高频问题与应答口径
人工智能·后端·python·大语言模型
weixin_307779134 小时前
RAG 面试陷阱——混合检索并非无条件优越:一个条件反转实验
人工智能·python·面试·职场和发展
Dxy12393102164 小时前
JS DES 加密详解
开发语言·javascript·arcgis
充值内卷4 小时前
我给桌面加了个鱼缸:C++ 写后端,WebView2 里养一座 Three.js 小岛
开发语言·javascript·c++
云和数据.ChenGuang4 小时前
深入解析 Python 的 dir():从用法到 CPython 源码实现
开发语言·人工智能·python·langchain
椒哥7 小时前
一天被问几十次"允许",我统计了 517 次,然后写了个插件
前端·javascript·github
荣码7 小时前
长上下文与大文档处理:200页PDF怎么喂给AI,我踩了4个坑
java·python
kyriewen7 小时前
我测了 6 种防请求竞态的写法:只有 1 种真能打
前端·javascript·程序员
databook8 小时前
Pandas 与 Polars:语法、性能和资源占用方面的对比
python·数据分析·pandas