Экспорт в Excel с помощью цикла в Django
Я работаю над проектом, в котором есть некоторая информация о клиенте.
Я экспортирую файл Excel, используя библиотеку xlwt.
У меня есть список заказов:
[<Booking: +6055664554>, <Booking: +6055664554>, <Booking: +6055664554>, <Booking: +6055664554>, <Booking: +6055664554>, <Booking: +6055664554>]
Моя функция экспорта:
def export_shimpent_xls(request,id):
response = HttpResponse(content_type='application/ms-excel')
shipment = Shipment.objects.get(pk=id)
file_name = "shipment_list_of_"+str(shipment.shimpment_number)+".xls"
response['Content-Disposition'] = 'attachment; filename="'+ file_name +'"'
wb = xlwt.Workbook(encoding='utf-8')
ws = wb.add_sheet('Shipment Booking List')
bookings_list = shipment.booking_list
#taking existing booking list which is already added in shipment
bookings = []
if bookings_list:
for booking in bookings_list:
data = Booking.objects.get(booking_reference=booking)
bookings.append(data)
# Sheet header, first row
row_num = 0
font_style = xlwt.XFStyle()
font_style.font.bold = True
columns = ['Ref Number', 'Name', 'Destination', 'Mobile Number', 'Weight','Carton','Payment Mode','Remark','Delivery Status',]
for col_num in range(len(columns)):
ws.write(row_num, col_num, columns[col_num], font_style)
# Sheet body, remaining rows
font_style = xlwt.XFStyle()
#issue is there, how can i itterate the bookings to get all value list?
rows = Booking.objects.get(booking_reference=bookings).values_list('booking_reference', 'receiver_name', 'receiver_city', 'receiver_phone', 'gross_weight', 'total_carton', 'payment_method', 'comment', 'booking_status')
for row in rows:
row_num += 1
for col_num in range(len(row)):
ws.write(row_num, col_num, row[col_num], font_style)
wb.save(response)
return response
Я застрял на итерации для моей переменной bookings, чтобы получить весь список значений в строках. Как я могу это сделать? Пожалуйста?