sqlalchemy

查询字段:

fields = ['username','nickname']
*fields 等同于('username','nickname',)

query = self.db.sess.query(self.Model).with_entities(func.from_unixtime(self.Model.create_time,"'%Y-%m-%d %H:%i:%s'",'username','nickname',).label('time'),*fields)
返回不带键名,需做处理
data = [dict(zip(result.keys(), result)) for result in obj_list]

query = self.db.sess.query(self.Model).options(load_only(fields)).filter(filters)
list = []
for i in obj_list:
a = i.dict
a.pop('_sa_instance_state')
list.append(a)
返回带键名

字段别名:
fields.append(literal("(SELECT name FROM fodu_sys_role WHERE role_id = fodu_sys_user.r_id)").label('name'))

posted @ 2021-02-05 10:42  zybyekai  阅读(159)  评论(0)    收藏  举报