Как вернуть файл на скачивание из Django?

Здравствуйте.
Есть архив .zip в определенной директории, нужно при обращении на ссылку через вьюгу вернуть файл на скачивание.
Делаю вот такое:
def download_file(request):
    response = HttpResponse(open("test.zip"), content_type='application/zip')
    response['Content-Disposition'] = 'attachment; filename=test.zip'
    response['Content-Type'] = 'application/x-zip'
    return response

Получаю папку из архива. Хочу получить такой же архив .zip.
Версия - Django 1.9.
  • Вопрос задан
  • 2067 просмотров
Пригласить эксперта
Ответы на вопрос 1
sim3x
@sim3x
django x-accel-redirect
stackoverflow.com/questions/28704712/django-nginx-...

server {
    listen       27796;
    server_name  myurl.com;
    root /home/ucwsri/webapps/static_media_ucwsri_nginx; 

    location / {
        autoindex on;
    }

    location ^~ /protected/ {
        internal;
    }


response = HttpResponse()
url = "/protected/some-file.pdf"
response['X-Accel-Redirect'] = url

return response
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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