mirror of
https://github.com/kennethreitz/tablib.git
synced 2026-06-05 15:00:19 +00:00
40 lines
961 B
Python
40 lines
961 B
Python
# -*- coding: utf-8 -*-
|
|
|
|
"""Tablib - Jira table export support.
|
|
|
|
Generates a Jira table from the dataset.
|
|
"""
|
|
from tablib.compat import unicode
|
|
|
|
title = 'jira'
|
|
|
|
|
|
def export_set(dataset):
|
|
"""Formats the dataset according to the Jira table syntax:
|
|
|
|
||heading 1||heading 2||heading 3||
|
|
|col A1|col A2|col A3|
|
|
|col B1|col B2|col B3|
|
|
|
|
:param dataset: dataset to serialize
|
|
:type dataset: tablib.core.Dataset
|
|
"""
|
|
|
|
header = _get_header(dataset.headers) if dataset.headers else ''
|
|
body = _get_body(dataset)
|
|
return '%s\n%s' % (header, body) if header else body
|
|
|
|
|
|
def _get_body(dataset):
|
|
return '\n'.join([_serialize_row(row) for row in dataset])
|
|
|
|
|
|
def _get_header(headers):
|
|
return _serialize_row(headers, delimiter='||')
|
|
|
|
|
|
def _serialize_row(row, delimiter='|'):
|
|
return '%s%s%s' % (delimiter,
|
|
delimiter.join([unicode(item) if item else ' ' for item in row]),
|
|
delimiter)
|