Ben gösteren bir görünüme sahip: durum mesajı, metin alanını, Gönder düğmesineDjango: Biçim görünümü üzerinde Güncellemelerimizi durum mesajı göndermek ve bir dosya indirir
başarılı olabilir göndermek veya İçin
başarısız seçilmesi başarılı istekler, bir dosyayı indirmek ve görünümde durum mesajını ("başarı") güncellemek istiyorum. Başarısızlık durumunda, yalnızca görünümün durum mesajını güncellemek istiyorum ("başarısız").
def download_file(request):
context = RequestContext(request)
context['message'] = ''
filename = request.POST.get('filename')
data = get_file(filename)
if data:
response = HttpResponse(data, content_type="application/octet-stream")
response['Content-Disposition'] = 'attachment; filename="download.bin"'
return response # NOT the desired behavior, this will only download the file, not update the view
else:
context['message'] = "failed"
return render_to_response('download_page.html', context_instance=context)
sizin formda
<label>status: {{ message }}</label>
<form action="/download/" method="post">
<label>filename: </label>
<input id="filename" type="text" name="filename">
<input type="submit" value="Submit">
</form>