首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Django中,输入字段上的GET请求返回None

在Django中,输入字段上的GET请求返回None
EN

Stack Overflow用户
提问于 2018-07-27 23:28:31
回答 1查看 267关注 0票数 0

我正在尝试从输入字段中检索数据。我想导出一个.xls文件,其中数据是在两个日期之间选择的。问题是,当我试图检索它们时,我得到的值是"None“。

.html

代码语言:javascript
复制
<form method="POST">
    <div class="col-6">
       <label class="form-control-label">Date de début</label>
       <input class="form-control" id="datepicker" type="text" name="date_deb">
    </div>
    <div class="col-6">
       <label class="form-control-label">Date de fin</label>
       <input class="form-control" id="datepicker-2" type="text" name="date_fin">
    </div>
    <a type="submit" class="btn btn-primary" href="{% url 'export_users_xls' %}">Exporter sous le format excel</a> 
</form>

views.py

代码语言:javascript
复制
def export_users_xls(request):
   response = HttpResponse(content_type='application/ms-excel')
   response['Content-Disposition'] = 'attachment; filename="contrats.xls"'

   wb = xlwt.Workbook(encoding='utf-8')
   ws = wb.add_sheet('Contrats')

   # Sheet header, first row
   row_num = 0

   font_style = xlwt.XFStyle()
   font_style.font.bold = True

   columns = ['Référence', 'Date de régularisation', "Type d'apporteur", 'Frais de chargement', "Type d'encours", 'Montant Euros', 'Montant UC', 'Montant Prudente']

   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()

   date_deb = request.POST.get('date_deb')
   date_fin = request.POST.get('date_fin')

   rows = models.Acte.objects.all().filter(date__range=[date_deb, date_fin]).values_list('ref', 'date', 'apporteur', 'frais', 'type_enc', 'montant_euros', 'montant_uc', 'montant_prud')
   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

你知道这个问题可能来自哪里吗?

感谢您的回答!

EN

回答 1

Stack Overflow用户

发布于 2018-07-27 23:40:13

我认为将数据放到视图中最简单的方法是将url移动到表单中的action字段,如下所示

代码语言:javascript
复制
<form method="post" action="{% url 'export_users_xls' %}">

然后只需点击一个按钮即可。因此,不是

代码语言:javascript
复制
<a type="submit" class="btn btn-primary" href="{% url 'export_users_xls' %}">Exporter sous le format excel</a>  

试一下这个

代码语言:javascript
复制
<input type="submit" value="Exporter sou le format excel" />
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51561124

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档