当前位置: 首页 > news >正文

FLASK 数据库建立以及部署和表的创建

首先安装flask-sqlalchemy

db = SQLAlchemy(app)

一 Mmeber、User模型类的创建

# coding: utf-8
from app import db, appclass Member(db.Model):__tablename__ = 'member'id = db.Column(db.Integer, primary_key=True)membername = db.Column(db.String(100), unique=True, index=True, info='会员名')mobile = db.Column(db.String(11), server_default=db.FetchedValue(), info='会员手机号码')sex = db.Column(db.Integer, nullable=False, server_default=db.FetchedValue(), info='性别 1:男 2:女')avatar = db.Column(db.String(200), nullable=True, server_default=db.FetchedValue(), info='会员头像')salt = db.Column(db.String(32), nullable=False, server_default=db.FetchedValue(), info='随机salt')reg_ip = db.Column(db.String(100), nullable=False, server_default=db.FetchedValue(), info='注册ip')status = db.Column(db.Integer, nullable=False, server_default=db.FetchedValue(), info='状态 1:有效 0:无效')updated_time = db.Column(db.DateTime, nullable=False, server_default=db.FetchedValue(), info='最后一次更新时间')created_time = db.Column(db.DateTime, nullable=False, server_default=db.FetchedValue(), info='插入时间')@propertydef status_desc(self):return app.config['STATUS_MAPPING'][str(self.status)]@propertydef sex_desc(self):sex_mapping = {"0":"未知","1":"男","2":"女"}return sex_mapping[str(self.sex)]#status 统一返回sex表格的字段,  虚拟的好处是  直接可以在index.html中直接使用。  虚拟字段不可以查询
# coding: utf-8
from app import dbclass User(db.Model):__tablename__ = 'user'uid = db.Column(db.BigInteger, primary_key=True)nickname = db.Column(db.String(100), nullable=False, server_default=db.FetchedValue())mobile = db.Column(db.String(20), nullable=False, server_default=db.FetchedValue())email = db.Column(db.String(100), nullable=False, server_default=db.FetchedValue())sex = db.Column(db.Integer, nullable=False, server_default=db.FetchedValue())avatar = db.Column(db.String(64), nullable=False, server_default=db.FetchedValue())login_name = db.Column(db.String(20), nullable=False, unique=True, server_default=db.FetchedValue())login_pwd = db.Column(db.String(32), nullable=False, server_default=db.FetchedValue())login_salt = db.Column(db.String(32), nullable=False, server_default=db.FetchedValue())status = db.Column(db.Integer, nullable=False, server_default=db.FetchedValue())updated_time = db.Column(db.DateTime, nullable=False, server_default=db.FetchedValue())created_time = db.Column(db.DateTime, nullable=False, server_default=db.FetchedValue())

二 app.py中导入User,Member模型类

from common.models.member import Member
from common.models.User import User

三: 在终端代码中给数据库创建对应的Member表格  和User表格

首先进入flask shell,然后使用创建代码

db.create_all()

四: 特别注意:

以上都做到了,create_all()还是创建不了添加的表格,就需要保存,刷新一下pycharm了。


http://www.mrgr.cn/news/49103.html

相关文章:

  • 了解Python 中的 __class__ 属性
  • 企业架构蓝图:理论指导下的数字化转型实践路径
  • 基于ESP32与Raspberry Pi的智能家居物联网项目详解
  • 模型 知识诅咒
  • Golang | Leetcode Golang题解之第475题供暖器
  • 【C语言教程】【常用类库】(七)标准实用工具库 - <stdlib.h>
  • Python 中也支持多态(Polymorphism)
  • OpenAI 开源多智能体框架Swarm
  • 开源代码编译过程中遇到的问题(持续更新)
  • 大一高等数学速成指南
  • 《向量数据库指南》——构建高效知识图谱检索系统的实战策略
  • <<迷雾>> 第11章 全自动加法计算机(3)--存储器示例 示例电路
  • 使用libssh2上传下载文件及Makefile编写
  • Brave编译指南2024 Linux篇-初始化构建环境(六)
  • SI案例分享--Tabbed Routing PCB信号仿真分析
  • ARM/Linux嵌入式面经(四二):思特威
  • NumPy 第十二课 -- 迭代数组
  • 如何从命令行界面运行交互式PHP Shell
  • .NET 一款通过DCOM实现系统提权的工具
  • 结构体的定义和使用