在使用tornado搭配sqlalchemy时出现的session失效问题
Session = sessionmaker(bind=engine)
session = Session()
for project_row in projects:
# 根据人员id,查询人员姓名
mans = project_row.assessors.split(',') if project_row.mans else []
mans_result = []
for man in mans:
name = session.query(UserInfo.describe).filter(UserInfo.id == int(assessor)).first()
dict_man = {
'id': assessor,
'name': name[0] if name else ''}
mans_result.append(dict_man)
project_row.mans = mans_result
# 根据项目负责人id,查询项目负责人姓名
project_leaders = project_row.project_leader.split(',') if project_row.project_leader else []
project_leader_result = []
for leader in project_leaders:
leader = int(leader)
#------------------------下面这句语句报错ProgrammingError("(psycopg2.ProgrammingError) can't ada
# pt type 'dict'")
name = session.query(UserInfo).filter(UserInfo.id == leader).first()
project_leader_result.append({'id': leader, 'name': name[0] if name else ''})
project_row.project_leader = project_leader_result
在去掉mans的查询之后就不会报错;
这是什么原因??