2017-01-30 13 views
0

Перед добавления AngularJS к моему переднему концу я был в состоянии загрузить файлы почтового индекса с моим сервера Django легко:

def myZipDownloadingView(request): 
    downloadableZip = open('myZip.zip','r') 
    response = HttpResponse(downloadableZip, content_type='application/force-download') 
    response['Content-Disposition'] = 'attachment; filename="myZip.zip"' 
    return response 

Теперь Угловым это один делает вызов к этому представлению, чтобы запросить загрузку, и файл больше не загружается браузером. Мой угловой вызов $ http.post() должен обрабатывать ответ, отправленный из представления? Может это не просто работать с:

$http.post("myZipDownloadingView"); 
+1

Что вы использовали перед AngularJS? –

+1

Почему бы просто не отправить форму по умолчанию, как вы делали раньше? Другими словами, чтобы ответить на вопрос в заголовке ... Нет – charlietfl

+0

Перед Угловым Я просто использовал процесс по умолчанию. Мой код, приведенный выше, немного упрощен, чтобы получить точную точку, но на самом деле мне нужно угловое сделать запрос начать загрузку. Я подумаю о лучшем названии и отредактирую его – stackPusher

ответ

1

Если вы предоставляете action и method в <form> и не перехватывать форма представить событие (ng-submit) или событие кнопку отправить (ng-click) форма будет представлять через процесс браузера по умолчанию ,

Поскольку это принудительная загрузка, ничего не должно измениться в текущем состоянии

+0

Спасибо за ответ. Это полезный момент. Но из-за характера страницы, хотя мне нужно угловое сделать запрос, так как он должен позаботиться о какой-либо обработке до того, как запрос может быть сделан. То, что я ищу, - это способ заставить силу-загрузку работать с угловым. – stackPusher

+1

может предварительно обработать форму до того, как она будет отправлена, если это поможет. – charlietfl

+0

hmm thats интересно, я посмотрю, что – stackPusher