Lanms Blog

模型的创建
Publish: 2019/3/27   

03-模型的创建

初始化SQLAlchemy

  # 方法1
  from flask-sqlalchemy import SQLAlchemy

  app = Flask(__name__)
  db = SQLAlchemy(app=app)

  # 方法2
  db = SQLAlchemy()

  def create_app():
      app = Flask(__name__)
      db.init_app(app=app)
      return app

定义模型


  from flask_sqlalchemy import SQLAlchemy

  db = SQLAlchemy()


  class Student(db.Model):
      __tablename__ = "tb_student"  # 数据库中对应的表的名称
      s_id = db.Column(db.Integer, primary_key=True, autoincrement=True)
      s_name = db.Column(db.String(16), unique=True)
      s_age = db.Column(db.Integer, default=1)

其中:

Integer表示创建的s_id字段的类型为整形,

primary_key表示是否为主键

String表示该字段为字符串

unique表示该字段唯一

default表示默认值

autoincrement表示是否自增

创建数据库表

在视图函数中我们引入models.py中定义的db

  from App.models import db

  @blue.route("/createdb/")
  def create_db():
      db.create_all()
      return "创建成功"

  @blue.route('/dropdb/')
  def drop_db():
      db.drop_all()
      return '删除成功'

推荐使用 SQL 语句来在数据库中创建对应的表, 避免出现不可预知的问题, 但是在建表时一定要注意表与表之间的关联关系, 可以在数据库中建表之后在 shell 环境中导入对应的模型, 来进行 modelName.query.all() 来进行查询, 验证



← 连接Redis和MySQL 模型的一对一/一对多/多对多 →

Powered by Hexo, Theme designs by @hpcslag.
Style-Framework Tocas-UI designs by @yamioldmel