장고 클라이언트 파일 다운로드 달성

그냥 프로젝트의 요구에, 파일을 다운로드에 대해 특별히 없기 때문에 장고, 프로젝트를 기반으로, 그것은 특별히 설명 할 수 없습니다. 만 프레 젠 테이션의 과정을 :

구현 과정 :

1, 다운로드 할 준비가 URL

#下载文件
    URL (R ' ^ 됨 Download_file / $ ' , downloadFile.DownloadFile.as_view (), 이름 = ' 됨 Download_file ' ),

2 뷰 클래스 (코드 부분)

django.http 수입 FileResponse에서
클래스 DownloadFile (보기, 엑셀) :
     '' ' 
    파일 다운로드 서버에서 클라이언트를 달성 
    ' '' 
    DEF GET (자체, 요청) :
         '' ' 
        클라이언트 다운로드 클라이언트에 Excel 파일을 보낼 수 있습니다. 
        : PARAM 요청 : 
        : 창 : 
        '' 
        # . 1 데이터를 취득하여 기록 할 엑셀 테이블 
        기록 = self.get_records ()
         # 2 씨 엑셀 서버에 데이터를 로컬에 저장 
        FILE_PATH = self.wite_to_excel ( ' 테스트 ' , 기록)
         #. 3, 데이터가 클라이언트로 스트리밍 
        , 파일 열기 = (FILE_PATH ' RB '# 3.1 헤더 설정 응답, 클라이언트에 다운로드 
        응답 [ ' 내용 - 형식 ' ] = ' 파일 응용 프로그램 / octet-stream을 ' 
        응답 [ ' 내용 - 처리 ' ] = F ' 첨부 파일, 파일 이름 = {os.path.basename ( FILE_PATH)} ' 
        반환 응답

 우리는 세 번째 단계에서 보이기 시작하는 코드는 위의 세 번째 단계는 당신이 그들의 실제 상황에 따라 데이터를 전송하고 오픈을 사용하여 이항 함수의 세 번째 단계를 수행 할 준비가, (엑셀 데이터) 내가 보낼 데이터입니다 방법은 파일을 읽고 다음 아래로 실행합니다.

(3) 앞 페이지 (부)

<a href= "{% URL 'download_file' %}"클래스 = "BTN btn-sm btn-success pull-right"> 导出数据</a>를 

 

네, 내 프로젝트의 최종 결과는 다음과 같습니다.

 

 

 

 

 

 

 

 

 

 

 

추천

출처www.cnblogs.com/caesar-id/p/11822292.html