Server-side XLSX export¶
Mirrors PDF: one HTTP endpoint, registered builders, same page loader as HTML.
Install¶
pip install "grid-view-spec[django,xlsx]"
# or openpyxl backend:
pip install "grid-view-spec[django,xlsx-all]"
Register a builder¶
from grid_view_spec.export.registry import GridViewExportJob, register_xlsx_export
def register_exports():
def builder(host, ctx):
page = load_orders_page(ctx)
return GridViewExportJob(
spec=page.spec,
rows=page.rows,
table_id="orders_table",
)
register_xlsx_export("orders", builder)
The pipeline resolves the target GridViewTable, applies export column selection and filter meta lines, and builds an XlsxReport via grid_view_spec.export.xlsx.
Pre-built workbook (advanced)¶
Return a job with prebuilt_xlsx set when the host builds a custom XlsxReport layout directly (multi-sheet workbooks). Most pages should use spec + rows only.