2014-11-20 2 views
1

사용자가 단어 문서를 다운로드 할 수있는 단일 페이지 플라스크 응용 프로그램을 만들려고합니다. 나는 이미 파이썬 -docx를 사용하여 문서를 저장/저장하는 방법을 알아 냈다. 그러나 이제 문서를 응답에서 사용할 수 있도록해야한다. 어떤 아이디어?플라스크로 워드 문서를 생성 하시겠습니까?

는 여기에 지금까지이 작업은 다음과 같습니다

from flask import Flask, render_template 
from docx import Document 
from cStringIO import StringIO 

@app.route('/') 
def index(): 
    document = Document() 
    document.add_heading("Sample Press Release", 0) 
    f = StringIO() 
    document.save(f) 
    length = f.tell() 
    f.seek(0) 
    return render_template('index.html') 

답변

4

대신 render_template('index.html')의 당신은 그냥 할 수 있습니다

from flask import Flask, render_template, send_file 
from docx import Document 
from cStringIO import StringIO 

@app.route('/') 
def index(): 
    document = Document() 
    document.add_heading("Sample Press Release", 0) 
    f = StringIO() 
    document.save(f) 
    length = f.tell() 
    f.seek(0) 
    return send_file(f, as_attachment=True, attachment_filename='report.doc') 
+0

이 방법을 사용하는 가장 간단한 방법이므로이 질문에 대답으로 표시했습니다. – BarFooBar

+0

덕분에 많은 도움이되었습니다! –

0

당신은 send_from_directorythis에 같은 대답을 사용할 수 있습니다.

텍스트를 보내는 경우 this 대답과 같이 도우미를 사용할 수도 있습니다.