class User(Model): __table__ = 'users' #id,username,password,admin,email,image,created_at(传入函数名即可) id = StringField(primary_key=True, default=next_id, ddl='varchar(50)') username = StringField(ddl='varchar(40)') password = StringField(ddl='varchar(40)') admin = BooleanField() email = StringField(ddl='varchar(40)') image = StringField(ddl='varchar(500)') created_at = FloatField(default=time.time) #复写父类的save方法,添加查重方法 async def save(self): if (await self.isSaved()) == False: # return Model.save() await super(User, self).save() else: raise SQLException('该用户已经被注册!') #判断用户是否存在于数据库 async def isSaved(self): sql = '%s where `%s`=?' % (self.__select__, 'email') rs = await select(sql, [self.email]) if len(rs) == 0: return False return True
class User(Model): __table__ = 'users' id = StringField(primary_key=True, default=next_id, ddl='varchar(50)') email = StringField(ddl='varchar(50)') passwd = StringField(ddl='varchar(50)') admin = BooleanField() name = StringField(ddl='varchar(50)') image = StringField(ddl='varchar(500)') created_at = FloatField(default=time.time)
class User(Model): __table__ = 'users' id = StringField(primary_key=True, default=next_id(), ddl='varchar(50)') email = StringField(ddl='varchar(50)', name='email') passwd = StringField(ddl='varchar(50)', name='passwd') admin = BooleanField(name='admin') name = StringField(ddl='varchar(50)', name='name') image = StringField(ddl='varchar(50)', name='image') create_at = FloatField(default=time.time(), name='create_at')
class User(Model): __table__ = 'users' id = StringField(primary_key=True, default=next_id, ddl='varchar(50)') passwd = StringField(ddl='varchar(50)') admin = BooleanField() name = StringField(ddl='varchar(50)') # 时间变量我们用float来存储,这样方便排序和类型转换 created_at = FloatField(default=time.time)
class User(Model): __table__ = "users" id = StringField(primary_key=True,default=next_id,ddl="varchar2(50)") email = StringField(ddl="varchar2(50)") password = StringField(ddl="varchar2(50)") admin = BooleanField() name = StringField(ddl="varchar2(50)") image = StringField("ddl=varchar2(500)") created_at = FloatField(default=time.time())
class User(Model): __table__ = 'users' id = StringField(primary_key=True, default=next_id, ddl='varchar(50)') email = StringField(ddl='varchar(50)') passwd = StringField(ddl='varchar(50)') admin = BooleanField() name = StringField(ddl='varchar(50)') image = StringField(ddl='varchar(500)') created_at = FloatField(default=time.time) def __init__(self, **kw): super().__init__(**kw) self.instanceTestField = "instanceStrFiled" def customMethod(self, paramStr): print('params' + str(paramStr))
class User(Model): __table__ = 'users' id = StringField(primary_key=True, default=next_id, ddl='varchar(50)') email = StringField(ddl='varchar(50)') passwd = StringField(ddl='varchar(50)') admin = BooleanField() name = StringField(ddl='varchar(50)') image = StringField(ddl='varchar(500)') created_at = FloatField(default=time.time) def show(self): print(1, '__mappings__:', self.__mappings__) print(2, '__table__:', self.__table__) print(3, '__primary_key__:', self.__primary_key__) print(4, '__fields__:', self.__fields__) print(5, '__select__:', self.__select__) print(6, '__insert__:', self.__insert__) print(7, '__update__:', self.__update__) print(8, '__delete__:', self.__delete__)