Автоматическая загрузка файла экспорта не работает в Django [дубликат]Python

Программы на Python
Гость
Автоматическая загрузка файла экспорта не работает в Django [дубликат]

Сообщение Гость »


У меня возникли проблемы при экспорте файла Excel с помощью кнопки экспорта, он не отображается автоматически, но когда я проверяю элемент, затем выбираю сеть, если я нажимаю статус экспорта, он загружается, но для меня будет сложно проверить элемент, вместо этого просто щелкните один кнопка. Я использовал Chrome. Я уже пробовал настроить автоматическую загрузку, но результат будет тот же. Это проблема новой версии веб-браузера или моего кода?
Изображение

Это мой код

Код: Выделить всё

@csrf_exempt
def export_status(request):
with connection.cursor() as cursor:
cursor.execute("""
SELECT tev_incoming.id,tev_outgoing.dv_no AS dv_no, tev_incoming.code, tev_incoming.account_no, tev_incoming.id_no, tev_incoming.first_name, tev_incoming.middle_name,
tev_incoming.last_name, tev_incoming.date_travel, tev_incoming.division, tev_incoming.section, tev_incoming.status_id, au.first_name AS incoming_by,rb.first_name AS reviewed_by,
tev_incoming.original_amount, tev_incoming.final_amount, tev_incoming.incoming_in AS date_actual, tev_incoming.updated_at AS date_entry,
tev_incoming.incoming_out AS date_reviewed_forwarded, tev_bridge.purpose AS purposes
FROM tev_incoming
INNER JOIN (
SELECT MAX(id) AS max_id
FROM tev_incoming
GROUP BY code
) AS latest_ids
ON tev_incoming.id = latest_ids.max_id
LEFT JOIN tev_bridge
ON tev_incoming.id = tev_bridge.tev_incoming_id
LEFT JOIN tev_outgoing
ON tev_bridge.tev_outgoing_id = tev_outgoing.id
LEFT JOIN auth_user AS au
ON au.id = tev_incoming.user_id
LEFT JOIN auth_user AS rb
ON rb.id = tev_incoming.reviewed_by
ORDER BY tev_incoming.id DESC;
""")
rows = cursor.fetchall()

response = HttpResponse(content_type='application/vnd.openxmlformats-officedocument.spreadsheetml.sheet')
response['Content-Disposition'] = 'attachment; filename={date}-TRIS-REPORT.xlsx'.format(
date=datetime.now().strftime('%Y-%m-%d'),
)

workbook = Workbook()
worksheet = workbook.active
worksheet.title = 'REPORT'

header_font = Font(name='Calibri', bold=True)
centered_alignment = Alignment(horizontal='center')
border_bottom = Border(
bottom=Side(border_style='medium', color='FF000000'),
)
wrapped_alignment = Alignment(
vertical='top',
wrap_text=True
)
columns = [
'DV NO',
'CODE',
'ACCOUNT NO',
'ID NO',
'FIRSTNAME',
'MIDDLENAME',
'LASTNAME',
'DATE TRAVEL',
'DIVISION',
'SECTION',
'STATUS ID',
'INCOMING BY',
'REVIEWED BY',
'ORIGINAL AMOUNT',
'FINAL_AMOUNT',
'DATE ACTUAL RECEIVED',
'DATE ENTRY',
'DATE REVIEWED FORWARDED',
'PURPOSE',
]
row_num = 1
for col_num, column_title in enumerate(columns, 1):
cell = worksheet.cell(row=row_num, column=col_num)
cell.value = column_title
cell.font = header_font
column_letter = get_column_letter(col_num)
column_dimensions = worksheet.column_dimensions[column_letter]

for tris in rows:
row_num += 1
row = [
tris[1],  # dv_no
tris[2],  # code
tris[3],  # account_no
tris[4],  # id_no
tris[5],  # first_name
tris[6],  # middle_name
tris[7],  # last_name
tris[8],  # date_travel
tris[9],  # division
tris[10],  # section
tris[11],  # status_id
tris[12],  # incoming_by
tris[13],  # reviewed_by
tris[14],  # original_amount
tris[15],  # final_amount
tris[16],
tris[17],
tris[18],  # date_reviewed_forwarded
tris[19],  # purposes
]
for col_num, cell_value in enumerate(row, 1):
cell = worksheet.cell(row=row_num, column=col_num)
cell.value = cell_value
column_letter = get_column_letter(col_num)
column_dimensions = worksheet.column_dimensions[column_letter]
column_dimensions.width = 19
workbook.save(response)
return response
мой ajax

Код: Выделить всё

    $.ajax({
type: 'POST',
url: "{% url 'export-status' %}"
}).done(function (data) {

});


Источник: https://stackoverflow.com/questions/781 ... -in-django

Вернуться в «Python»