2024-06-02 09:10:06 发布
网友
如何在SQLAlchemy中对ColumnCollection排序
我用这种方式得到一个列列表
listCols = MyTable.__table__.columns
现在我想按列名对列进行排序,但我真的不想因为转换为OrderedDict而失去column类
@snakecharmerb您的解决方案在1.3版中运行良好,尽管ColumnCollection随着SQLAlchemy 1.4的最新发布而发生了变化
ColumnCollection
ColumnCollection(*sorted(columns, key=lambda c: c.name))
ColumnCollection(columns=[sorted(columns, key=lambda c: c.name)])
注意:我还没有在2.x上进行测试,但我猜它希望与1.4中的相同
返回不可排序的ImmutableColumnCollection
ImmutableColumnCollection
但是,您可以使用它创建具有所需顺序的新ColumnCollection:
from sqlalchemy import sql new_list_cols = sql.expression.ColumnCollection(*sorted(listCols, key=lambda x: x.name))
@snakecharmerb您的解决方案在1.3版中运行良好,尽管
ColumnCollection
随着SQLAlchemy 1.4的最新发布而发生了变化炼金术<;1.4
ColumnCollection(*sorted(columns, key=lambda c: c.name))
SQLAlchemy>;=1.4
ColumnCollection(columns=[sorted(columns, key=lambda c: c.name)])
注意:我还没有在2.x上进行测试,但我猜它希望与1.4中的相同
返回不可排序的
ImmutableColumnCollection
但是,您可以使用它创建具有所需顺序的新ColumnCollection:
相关问题 更多 >
编程相关推荐