FLASK数据库模型( 二 )
@home.route('/article/
思路设计:
在templates模板目录中新建一个article 用于存放文章详情页的html文件 , 并且索引到这个目录中 , 在这个目录中只有一个 html 文件 , 我们只需要向这个html文件填入查询回来的数据即可 。
由于文章列表需要根据文章的 uuid 来跳转到详情页 , 所以这个 html文件的名称需要 rename 为跳转文章的 uuid , 才能正确跳转 。
最后 , 根据 uuid 查询到文章 , 再由文章的 id 查询到详情文章内容 , 渲染到详情页 。
是不是及其简单 , 所以前期的工作主要是数据库模型字段的设计 , 还有迁移到数据库中 , 也就是创建表 , 让其工作 。
数据库迁移
使用 flask_migrate 扩展可以非常简单的进行数据库的迁移
# coding:utf8from datetime import datetimefrom flask_migrate import Migrate, MigrateCommandfrom app import appfrom app.models import dbfrom flask_script import Manager, Servermanage = Manager(app)# 迁移Migrate(app,db)manage.add_command('db',MigrateCommand)if __name__ == "__main__":manage.run'''初始化python manage.py db init创建迁移python manage.py db migrate执行迁移python manage.py db upgrade'''
黑窗口 执行命令 python manage.py db init
初始化数据库 , 执行之后会在主 app 目录中生成一个 migrations 目录 , 里面包含了一些创建的信息 , 如 版本号 和 操作脚本 。
然后执行 python manage.py db migrate
迁移数据库 , 在数据库中真正创建表字段
最后执行 python manage.py db upgrade 让其生效
PS:在往后的每一次更改数据库模型中的字段之后 , 只需要执行后两个命令即可 。
关于数据库回滚
# -*- coding:utf-8 -*-import osfrom datetime import datetimefrom sqlalchemy import or_from app import app,dbfrom app.Logger.logger import log_vfrom app.forms import CommentForm, SearchFormfrom app.tools.getIdAddr import getAddrfrom app.home.home import homefrom flask import render_template, request, redirectfrom app.models import Article, Article_Detail, Global_V, Comment,UserIP@home.route('/postComment/
- Google AI建立了一个能够分析烘焙食谱的机器学习模型
- OpenAI推DALL-E模型:能根据文字描述生成图片
- DataPipeline亮相2020数据库技术大会,揽获「技术卓越奖」
- WPC数据库中发现华为Mate 40E新型号 搭载麒麟990E芯片
- 谷歌搜索的灵魂!BERT模型的崛起与荣耀
- MySQL数据库数据归档回收工具使用场景分享-爱可生
- 一次模型训练相当70万公里排放量?深度学习耗能超乎你想象
- 利用谷歌3D模型和AR技术 你可以邀请尤达宝宝来家做客
- 德国Premacon新品:利勃海尔R926挖机模型正式交付
- 当数据库遇上"自动驾驶",阿里云 DAS 在自治诊断的突破