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

打印 上一主题 下一主题

主题 1740|帖子 1740|积分 5220

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
首先安装flask-sqlalchemy
  1. db = SQLAlchemy(app)
复制代码
一 Mmeber、User模型类的创建

  1. # coding: utf-8
  2. from app import db, app
  3. class Member(db.Model):
  4.     __tablename__ = 'member'
  5.     id = db.Column(db.Integer, primary_key=True)
  6.     membername = db.Column(db.String(100), unique=True, index=True, info='会员名')
  7.     mobile = db.Column(db.String(11), server_default=db.FetchedValue(), info='会员手机号码')
  8.     sex = db.Column(db.Integer, nullable=False, server_default=db.FetchedValue(), info='性别 1:男 2:女')
  9.     avatar = db.Column(db.String(200), nullable=True, server_default=db.FetchedValue(), info='会员头像')
  10.     salt = db.Column(db.String(32), nullable=False, server_default=db.FetchedValue(), info='随机salt')
  11.     reg_ip = db.Column(db.String(100), nullable=False, server_default=db.FetchedValue(), info='注册ip')
  12.     status = db.Column(db.Integer, nullable=False, server_default=db.FetchedValue(), info='状态 1:有效 0:无效')
  13.     updated_time = db.Column(db.DateTime, nullable=False, server_default=db.FetchedValue(), info='最后一次更新时间')
  14.     created_time = db.Column(db.DateTime, nullable=False, server_default=db.FetchedValue(), info='插入时间')
  15.     @property
  16.     def status_desc(self):
  17.         return app.config['STATUS_MAPPING'][str(self.status)]
  18.     @property
  19.     def sex_desc(self):
  20.         sex_mapping = {
  21.             "0":"未知",
  22.             "1":"男",
  23.             "2":"女"
  24.         }
  25.         return sex_mapping[str(self.sex)]
  26.     #status 统一返回sex表格的字段,  虚拟的好处是  直接可以在index.html中直接使用。  虚拟字段不可以查询
复制代码
  1. # coding: utf-8
  2. from app import db
  3. class User(db.Model):
  4.     __tablename__ = 'user'
  5.     uid = db.Column(db.BigInteger, primary_key=True)
  6.     nickname = db.Column(db.String(100), nullable=False, server_default=db.FetchedValue())
  7.     mobile = db.Column(db.String(20), nullable=False, server_default=db.FetchedValue())
  8.     email = db.Column(db.String(100), nullable=False, server_default=db.FetchedValue())
  9.     sex = db.Column(db.Integer, nullable=False, server_default=db.FetchedValue())
  10.     avatar = db.Column(db.String(64), nullable=False, server_default=db.FetchedValue())
  11.     login_name = db.Column(db.String(20), nullable=False, unique=True, server_default=db.FetchedValue())
  12.     login_pwd = db.Column(db.String(32), nullable=False, server_default=db.FetchedValue())
  13.     login_salt = db.Column(db.String(32), nullable=False, server_default=db.FetchedValue())
  14.     status = db.Column(db.Integer, nullable=False, server_default=db.FetchedValue())
  15.     updated_time = db.Column(db.DateTime, nullable=False, server_default=db.FetchedValue())
  16.     created_time = db.Column(db.DateTime, nullable=False, server_default=db.FetchedValue())
复制代码
二 app.py中导入User,Member模型类

  1. from common.models.member import Member
  2. from common.models.User import User
复制代码
三: 在终端代码中给数据库创建对应的Member表格  和User表格
首先辈入flask shell,然后使用创建代码
  1. db.create_all()
复制代码
四: 特别留意:
以上都做到了,create_all()照旧创建不了添加的表格,就需要生存,刷新一下pycharm了。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

天空闲话

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表