Задать вопрос

Как передать параметры в ссылке?

Есть кнопка с ссылкой на вьюху, которая экспортирует данные в excel формате и отдает нам xls файл.
<button type="button" class="btn btn-default"><a href="{% url 'export_company_orders' %}">Excel</a></button>


Само представление "export_company_orders"
def export_company_profit(request):
    book = xlwt.Workbook(encoding='utf-8')
    sheet = book.add_sheet('Прибыль компании')

    alignment = xlwt.Alignment()
    alignment.horz = xlwt.Alignment.HORZ_LEFT
    alignment.vert = xlwt.Alignment.VERT_TOP
    style = xlwt.XFStyle()
    style.alignment = alignment

    # write the header
    row_num = 0

    columns = [
        (u"Дата", 4000),
        (u"Заказы", 2000),
        (u"Сумма", 2000),
    ]

    for col_num in xrange(len(columns)):
        sheet.write(row_num, col_num, columns[col_num][0], style=xlwt.Style.default_style)
        # set column width
        sheet.col(col_num).width = columns[col_num][1]

    # write your data
    items = CompanyRevenue.objects.all()
    for item in items:
        try:
            row = [
                item.date.strftime("%Y-%m-%d"),
                item.order_count,
                item.order_revenue,
            ]
            row_num += 1
            for col_num in xrange(len(row)):
                sheet.write(row_num, col_num, row[col_num], style=xlwt.Style.default_style)
        except User.DoesNotExist:
            continue

    response = HttpResponse(mimetype='application/vnd.ms-excel')
    response['Content-Disposition'] = 'attachment; filename=Прибыль компании.xls'
    book.save(response)
    return response


Сейчас экспорт происходит за все время. Нужно добавить период, но не знаю как правильно передать параметры начала и конца даты из формы в ссылку. Или как вообще сделать правильный экспорт с фильтрацией?
  • Вопрос задан
  • 2572 просмотра
Подписаться 2 Оценить Комментировать
Решения вопроса 1
@Warlegend Автор вопроса
Вот решение:
{% url 'myapp:export_company_profit' start_date=start_date end_date='end_date' as the_url %}
<button type="button" class="btn btn-default"><a href="{{ the_url }}">Excel</a></button>
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы