首页 > 解决方案 > 将文件导出到 csv 但它不会在 django 中显示文件

问题描述

所以我尝试将查询结果导出到 csv 文件中,但是当我这样做时,它说成功,但我看不到文件在哪里,或者在浏览器中下载的文件,我已经搜索了该文件,但我没有在任何地方找到它, 这是代码

html 中的 AJAX

 <script>
      $(document).ready(function() {
      $("#export").click(function () {
        var urls = "{% url 'polls:export' %}";  
        var name = $('#columnselect').val();
        var table = $('#dataselect').val();
        var column = $('#conditionselect').val();
        var operator = $('#operator').val();
        var condition = $('#parameter').val();

        $.ajax({                     
          url: urls,                    
          data: {
            'name' : name,
            'table': table,
            'column' : column,
            'operator' : operator,
            'condition' : condition
          },
          success: function(data) {   
              alert("success"); 
          },
          error: function(data)
          {
            alert("error occured");
          }
        });
      });
      });

  </script>

网址.py

path('export/',views.export,name='export'),

视图.py

def export(request):
    import cx_Oracle
    data_name = request.GET.get('name',1)
    table_name = request.GET.get('table',1)
    column_name = request.GET.get('column',1)
    operator = request.GET.get('operator',1)
    condition = request.GET.get('condition',1)
    dsn_tns = cx_Oracle.makedsn('IP', 'PORT', sid='') 
    conn = cx_Oracle.connect(user=r'', password='', dsn=dsn_tns) 
    c = conn.cursor() 
    c.execute("select "+data_name+" from "+table_name+" where "+column_name+operator+"'"+condition+"'")
    c.rowfactory = makeDictFactory(c)
    columnalldata = []
    for rowDict in c:
        columnalldata.append(rowDict[data_name])
    context = {
        'obj4' : columnalldata
    }
    response = HttpResponse(content_type ='text/csv')
    response['Content-Disposition'] = 'attachment;filename="output.csv"'

    writer = csv.writer(response)
    writer.writerow(context)
    print(response)
    return response

有人可以在这里找到我错了吗?我也已经遵循文档了..

感谢您的帮助

标签: pythondjango

解决方案


推荐阅读