我在 Flask-excel 中使用函数 make_response_from_records 时可以控制列顺序吗?

Can I control column order when I use function make_response_from_records in Flask-excel?

我正在使用 flask-excel 将字典列表导出到 excel 文件。这是我的代码。

return excel.make_response_from_records(
    result,
    "csv",
    file_name="export_data",
    dest_encoding="gb2312"
)

我成功获得了一个 Excel 文件,其中的列按 'a b c' 排序。我怎样才能控制订单?谢谢。

请提供有序字典实例的列表。根据 the source,yield_from_records() 将遵循您的顺序,只要第一个是有序字典。

另一种解决方案,如果使用数据库,您可以使用“make_response_from_query_set”并从数组中指定 column_names,它将保持顺序。

report = db.session.query(tablename).filter_by(date='2020-12-25').all()
column_names = ['date', 'org', 'activation',......]
return excel.make_response_from_query_sets(tablename, column_names, file_type='csv', file_name='somefilename')