如果你的表比较小的话,可以对每个id单独查询,然后组成一个list:

[Shoe.query.filter_by(id=id).one() for id in my_list_of_ids]

如果你的表很大,上述查询方法会很慢。此时建议使用in条件的查询

shoes = Shoe.query.filter(Shoe.id.in_(my_list_of_ids)).all()
[next(s for s in shoes if s.id == id) for id in my_list_of_ids]
有model Account,SQLAlchemy 查询语句如下:
query = Account.query.filter(Account.id.in_(account_ids)).order_by(Account.date_created.desc())
这里 uids 如果为空,执行查询会有如下警告:
/usr/local...
from sqlalchemy import Column
from sqlalchemy import and_, or_
from sqlalchemy import asc, desc
from sqlalchemy import exists
from sqlalchemy import func
class Department(db.Model):
    """用户管理"""
				
from sqlalchemy import create_engine from sqlalchemy.ext.declarative import declarative_base from sqlalchemy import Column,Integer,String # 1.创建数据库引擎,链接数据库 engine = create_engine('mysql+pymysql://root:123456@127.0.0.1:3306/sqlalchemy_s14?charset=utf8')
sqlalchemyin_ 批量delete # 删除记录时,默认会尝试删除 session 中符合条件的对象,而 in 操作估计还不支持,于是就出错了。解决办法就是删除时不进行同步,然后再让 session 里的所有实体都过期 history_delete_num = session.query(Model).filter(Model.id.in_(id_list))\ .delete(synchronize_session=False)id_list