# wsite **Repository Path**: masterAlen/wsite ## Basic Information - **Project Name**: wsite - **Description**: flask框架学习 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-02-15 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## WSITE 这是一个基于flask框架构建的网站, 主要是实践《基于Python的Web应用开发》用例 #### 大型站定的项目结构 ```html |-flasky |-app/ |-templates/ |-static/ |-main/ |-__init__.py |-errors.py |-forms.py |-views.py |-__init__.py |-email.py |-models.py |-migrations/ |-tests/ |-__init__.py |-test*.py |-venv/ |-requirements.txt |-config.py |-flasky.py ``` 摘录来自: [美] 米格尔 • 格林贝格. “Flask Web开发:基于Python的Web应用开发实战(第2版)。” iBooks. #### Flask-Migrate 数据仓库迁移框架 flask db init 初始化一个数据管理仓库 管理数据库模式变化步骤如下: 1. 对模型做必要的修改 2. 执行flask db migrate命令,自动创建一个迁移脚本 eg: flask db migrate -m 'migrate comment' 创建一个迁移脚本 3. 检查自动生成的脚本,根据实际情况对模型进行调整 4. 把迁移脚本纳入版本控制 5. 执行flask db upgrade命令,把迁移应用到数据仓库中 #### Flask-Mail 邮件模块 flask-mail 是对Python原生的smtplib进行了包装,使其更好的集成到flask框架中 #### Flask-SQLAlchemy 模型 建表模型的Column默认值 default, server_default server_default 是建表时设置默认值,default则是在创建实例时设置默认值 ```python # 建表的DDL设置默认值,取数据库服务器的值, 只能为string格式的 seed_count = db.Column(db.Integer, server_default='0', comment='种子数量') # 创建模型实例时默认值,取的是程序服务器的值 seed_count = db.Column(db.Integer, default='0', comment='种子数量') ```