# Flask脚手架
这个项目是一个功能拆分的脚手架Demo,是根据千峰教育的Flask视频教程编写的,代码中仅实现了个个部分的的示例代码,使用者可以根据示例代码编写自己的业务。
Demo中进行了详细的注释,以方便使用者快速了解当前代码的使用方法和代码逻辑结构。
<br/>
项目结构:
<br/> <br/>
│ ext.py
│ manage.py
│ settings.py
│
├─App
│ │ config.py
│ │ models.py
│ │ sqlite.db
│ │ __init__.py
│ │
│ ├─static
│ ├─templates
│ ├─views
│ │ │ views.py
│ │ │ views2.py
│ │ └─ __init__.py
<br/> <br/>
FlaskDemo关系图:

环境要求:
python 3.6
mysql 5.5
安装环境
Windows下:
1.启动cmd窗口
2.将目录切换到FlaskDemo下
使用conda进行安装
conda安装命令:
```angular2html
conda install --yes --file conda-requirements.txt
```
使用pip进行安装
```angular2html
pip install -r pip-requirements.txt
```
如果使用conda安装时有的模块安装失败,就用pip进行安装
(如果conda使用的是清华源,可能Flask相关的模块会找不到)
项目初始化
1.修改配置文件
在FlaskDemo/App/config.py中修改对应开发环境的数据库配置
在FlaskDemo/settings.py中配置你需要的启动模式,RUN_MODE会去匹配config.py中对应的配置
2.在mysql中创建数据库:
```angular2html
create database 你的数据库名 charset=utf8
```
3.生成数据表
```angular2html
python manage.py db init
python manage.py db migrate
python manage.py db upgrade
```
4.启动项目
第一次启动如果很卡,可以刷新几次浏览器,或者使用多线程启动
```angular2html
# 单线程启动
# 默认在本机IP的5000端口启动
python manage.py runserver
# 多线程启动
python manage.py runserver --threaded
```
5.运行结果
如果在浏览器中输入前面你设置的ip:port,浏览器显示 Hello world! 表示运行成功。
最后
源码中有十分详细的注释,在FlaskDemo/note.txt中还有对整个项目需要注意的地方以及个人感觉比较重要的笔记和使用方法
这份代码本身也不属于我个人的劳动成果,我只是手码了一遍,整理了一下并加了一些注释和自己的理解,所以不存在什么版权问题,如果说版权那应该属于千峰教育所有。
如果您感觉有用,请帮我点个star,谢谢。
另外,可以访问我的个人博客,主要记录我在机器学习方面遇到的问题以及个人总结。
博客地址:www.mlzhilu.com
希望能帮助更多的同行省去繁琐的工作。
Flask脚手架,已对接mysql,可以直接用来Flask开发,代码中有详细的代码注释.zip
需积分: 0 114 浏览量
更新于2023-09-28
1
收藏 37KB ZIP 举报
**Flask脚手架简介**
Flask是一款轻量级的Web服务程序,它基于Python语言,采用Werkzeug WSGI工具箱和Jinja2模板引擎。作为一个微框架,Flask提供基础的HTTP服务器功能,使得开发者可以快速构建自己的Web应用。在本压缩包中,你将获得一个已经配置好的Flask开发环境,它已经对接了MySQL数据库,这将大大简化你的开发流程。
**Flask与MySQL的集成**
在Flask中对接MySQL,通常会使用如`flask-sqlalchemy`这样的扩展来处理数据库操作。`flask-sqlalchemy`是SQLAlchemy(一个强大的ORM库)与Flask的集成,它使得数据库模型的定义、连接管理变得简单。在这个脚手架中,你可能会看到以下关键代码片段:
1. 安装`flask-sqlalchemy`:
```
pip install flask-sqlalchemy
```
2. 在Flask应用初始化时配置数据库连接:
```python
from flask_sqlalchemy import SQLAlchemy
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql://username:password@localhost/dbname'
db = SQLAlchemy(app)
```
3. 定义数据库模型:
```python
class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
username = db.Column(db.String(80), unique=True, nullable=False)
email = db.Column(db.String(120), unique=True, nullable=False)
def __repr__(self):
return '<User %r>' % self.username
```
4. 数据库操作:
- 创建表:运行`db.create_all()`。
- 插入数据:创建模型实例并调用`db.session.add()`,然后`db.session.commit()`。
- 查询数据:使用`db.session.query()`方法。
- 更新和删除数据:相应地修改模型实例,然后提交。
**Flask代码注释**
这个脚手架中的代码应该包含了大量的注释,这对于理解和学习Flask应用的结构和工作原理非常有帮助。注释通常会解释各个模块的功能、变量的作用以及关键函数的逻辑。通过阅读这些注释,你可以快速上手项目,并了解如何进行数据库操作、路由设置、视图函数等核心概念。
**文件结构**
在`FlaskDemo-master`目录下,你可能会看到以下标准的Flask项目结构:
- `app.py`: 主应用文件,包含了Flask应用实例的创建、路由设置等。
- `models.py`: 数据库模型定义。
- `config.py`: 应用配置。
- `views.py`: 视图函数,处理HTTP请求并返回响应。
- `templates`: 存放Jinja2模板文件。
- `static`: 存放静态资源,如CSS、JavaScript文件。
- `__init__.py`: 通常包含应用的初始化代码,使目录成为Python包。
**总结**
这个Flask脚手架为你提供了一个可以直接用于开发的环境,包括了数据库的集成,使得你可以专注于业务逻辑的实现,而无需从零开始搭建基础设施。同时,详细的代码注释将引导你理解项目的各个部分,有助于提升你的Flask开发技能。无论是初学者还是有经验的开发者,这个压缩包都将是一个宝贵的资源。记得根据你的具体需求对项目进行调整和扩展,以满足实际的项目需求。

天天501
- 粉丝: 647
最新资源
- Udacity 平台上的机器学习工程师练习项目
- 互联网+时代背景下中职英语信息化教学模式探究.docx
- 边远少数民族地区乡村医生计算机技能培训模式研究.docx
- 公共服务背景下江门市全民健身网络服务体系的研究.docx
- 校企合作中计算机专业人才培养模式的探索与实践.docx
- 人事管理系统课程方案设计书(数据库).doc
- 贵州省发展大数据产业的成就、问题和对策建议.docx
- 《美食天下》网站的建设本科课程设计.doc
- 习题项目管理器设计器和向导的使用.doc
- 实战电子商务专家所志国论电商在健康产业中的应用.doc
- Heplcm常用机械日语汇总.doc
- 单片机原理与应用课程设计方案任务书.doc
- 翻转课堂在中职计算机Photoshop课程教学中的应用探讨.docx
- 嵌入式体验入门班实验手册.doc
- 初中-信息技术--计算机-起源-发展.ppt
- 化工仪表及自动化-课后-标准答案-第5版-厉玉鸣-(史上最全版本).doc