flask如何写一个model

 1 # -*- coding: utf-8 -*-
 2 
 3 from graphics import db   # 一,模块和包:导入db对象,在graphics/_init_.py中定义得db = SQLAlchemy(),参考:https://www.cnblogs.com/chaojiyingxiong/p/14784269.html
 4 from sqlalchemy.dialects.mysql import BIGINT
 5 
 6 
 7 class ImageCheck(db.Model):                             # 二,类的继承:db是SQLAlchemy的实例,Model是db的属性,db.Model是一个类,这里继承了db.Model的一些方法和属性
                                           # 三,在ORM中,模型一般是一个python类,类中的属性对应数据库中的列
8 __tablename__ = 'image_checks' # 四,__tablename__类变量是在数据库中定义的表名,如果没有类变量,Flask_SQLalchemy会默认一个表名 9 id = db.Column(BIGINT(unsigned=True), primary_key=True) # 五,其余的类变量是该模型的属性,被定义为db.Column的实例。db.Column的第一个参数是数据库列和模型属性的类型 10 para_info=db.Column(db.Text, nullable=True) # 六,db.Text这列的取值类型,常见类型参考:https://www.cnblogs.com/chaojiyingxiong/p/14784782.html 11 create_time = db.Column(db.String(64), nullable=True) # 七,类属性和实例属性的区别,参考:https://www.cnblogs.com/chaojiyingxiong/p/14785032.html 12 13 14 def __repr__(self): #八,__repr__(self)方法,Python __repr__()方法:显示属性,具体参考:https://www.cnblogs.com/chaojiyingxiong/p/14784955.html 15 return '<Image_check {} {} {}>'.format(self.id, self.para_info, self.create_time) 16 17 def as_dict(self): #九,as_dict(),字典生成式,将对象转变为json,一般数据库查询用到,参考:https://www.cnblogs.com/chaojiyingxiong/p/14786316.html 18 return {c.name: getattr(self, c.name) for c in self.__table__.columns}
全世界的程序员们联合起来吧!
原文地址:https://www.cnblogs.com/chaojiyingxiong/p/14782648.html