2010-07-30 11 views

ответ

9

Простейшая таблица функции:

table = Table(data, colWidths=270, rowHeights=79) 

Сколько столбцов & конечные строки зависят от набора данных. Все наши функции таблицы выглядят так:

from reportlab.platypus import SimpleDocTemplate 
from reportlab.platypus.tables import Table 
cm = 2.54 

def print_pdf(modeladmin, request, queryset): 
    response = HttpResponse(mimetype='application/pdf') 
    response['Content-Disposition'] = 'attachment; filename=somefilename.pdf' 

    elements = [] 

    doc = SimpleDocTemplate(response, rightMargin=0, leftMargin=6.5 * cm, topMargin=0.3 * cm, bottomMargin=0) 

    data=[(1,2),(3,4)] 
    table = Table(data, colWidths=270, rowHeights=79) 
    elements.append(table) 
    doc.build(elements) 
    return response 

Это сделает таблицу 2X2 и заполнит ее цифрами 1,2,3,4. Затем вы можете сделать файл документа. В моем случае я сделал HttpResponse тем, что похоже на файл.

Смежные вопросы