2009-05-07 15 views
13

Ho una vista Django che restituisce uno HttpResponse con un tipo MIME speciale per rendere il browser dell'utente "scaricabile" dal file anziché visualizzarlo nel browser. Il problema è che il nome file predefinito che la risposta verrà salvata è l'URL a cui l'utente ha provato ad accedere.Effettua la risposta di risposta di Django come "nome file diverso"

C'è un modo per includere un nome file predefinito nell'oggetto HttpResponse o devo reindirizzare a un URL diverso per farlo accadere?

risposta

27

C'è un esempio rilevante nel docs:

from django.http import HttpResponse 

def some_view(request): 
    # Create the HttpResponse object with the appropriate headers. 
    response = HttpResponse(mimetype='application/pdf', <snip>) 
    response['Content-Disposition'] = 'attachment; filename="somefilename.pdf"' 
    return response 
+0

nota minore: è necessario virgolette il nome del file o il browser utilizzerà "download.bin". Cioè: filename = "somefilename.pdf" – vrplumber