def get_users(self, department_ids, selectable=User, is_alive=True, except_main_department_owner=False):
"""
Returns all users of given departments
"""
query_ob = self.session.query(selectable).join(User.departments).filter(
Department.id.in_(department_ids))
if except_main_department_owner:
query_ob = query_ob.filter(
User.id != DefaultValue.DEFAULT_MAIN_DEPARTMENT_OWNER_ID
)
if is_alive:
query_ob = query_ob.filter(
User.is_alive
)
return query_ob.all()
当我打电话传递个人身份证时,例如:
d_user = [helper.get_users([1], is_alive=True, except_main_department_owner=True)]
返回值。
但是当我想要一系列清单时:
helper = DepartmentHelper(self.session, self.login_user)
d_user = [helper.get_users([id], is_alive=True, except_main_department_owner=True) for id in self.data_departments]
它给我一个错误。
"Failed processing pyformat-parameters; %s" % err)
sqlalchemy.exc.ProgrammingError:
(mysql.connector.errors.ProgrammingError) Failed processing pyformat-
parameters; 'MySQLConverter' object has no attribute
'_department_to_mysql'
答案 0 :(得分:0)
我不确定你的要求是什么,但我认为你要问的是连接两个列表。
list1=list2+list3
这将连接两个列表
答案 1 :(得分:0)
在linked question(我认为您应该坚持一个问题,并努力制定SSCCE)中,您指定从此功能获取用户:
def get_users(self, department_ids, selectable=User, is_alive=True, except_main_department_owner=False):
"""Returns all users of given departments
"""
query_ob = self.session.query(selectable).join(User.departments).filter(
Department.id.in_(department_ids))
return query_ob.all()
根据您的评论,您指定您的部门编号为1..n。然后,您可以获得具有列表推导的用户列表列表:
n = 9
department_ids = range(1,n+1)
users_per_department = [self.get_users([id]) for id in department_ids]
答案 2 :(得分:0)
您可以使用方括号引用列表项(从零开始计算):
some_list = [[],[],[]]
some_list[1] += [1,2,3]
现在some_list
包含[[], [1, 2, 3], []]
。
答案 3 :(得分:0)
您可以通过以下示例实现此目的
department=[]
department.append([1,2,..])
所以:
department=[[1,2,],]