Также можно изменить порядок столбцов при компиляции CREATE TABLE (здесь показано на диалекте postgresql
):
from sqlalchemy.schema import CreateTable
from sqlalchemy.ext.compiler import compiles
@compiles(CreateTable, 'postgresql')
def _compile_create_table(element, compiler, **kwargs):
element.columns = element.columns[::-1] # reverse order of columns
return compiler.visit_create_table(element)
Затем это работает с metadata.create_all()
.