2016-09-08 5 views
1

Ich versuche, herauszufinden, wie zum Download von Dateien in Django.I durch ein paar Antworten auf Stackoverflow ging und ausprobiert dies:Datei kann nicht in Django herunterladen

views.py

def download(): 

    file = open("DemoCSV.csv", "r") 

    response = HttpResponse(file,content_type='application/vnd.ms-excel') 
    response['Content-Disposition'] = 'attachment; filename="DemoCSV.csv"' 
    return response 

Die Die Datei DemoCSV.csv befindet sich im selben Ordner wie meine App.

Wenn ich die URL aus dem Browser getroffen, kann ich nicht laden Sie die Dateien auszuführen.Diese Fehlermeldung angezeigt wird:

TypeError at /resources/download_files 
download() takes 0 positional arguments but 1 was given 

Was bin ich?

Antwort

1

Es sieht aus wie download ist eine Ansicht, als solche wird erwartet, dass ein einzelner Parameter, ein HttpRequest-Objekt. so ändern Sie wie folgt

def download(request): 

    file = open("DemoCSV.csv", "r") 

    response = HttpResponse(file,content_type='application/vnd.ms-excel') 
    response['Content-Disposition'] = 'attachment; filename="DemoCSV.csv"' 
    return response 
+0

Danke man.It half. –

+0

Froh, Hilfe gewesen zu sein – e4c5

+0

Auch für jeden Blick auf diese Frage, geben Sie den vollständigen Pfad der Datei in der "open" -Anweisung. –

Verwandte Themen