【发布时间】:2018-11-27 13:40:10
【问题描述】:
我有一个独立的应用程序,它接收一个 excel 文件并输出一个 word 文档。这可以作为独立的工作正常。
我现在尝试将其集成到 Flask 应用程序中,但 Flask 找不到我的应用程序的子文件夹“模板”。这是我的文件结构:
my_flask_site
├── flask_app.py
├── __init__.py
├── templates
| ├── index.html
| └── report.html
├── uploads
| └── myfile.xlsx
|
└── apps
└── convert_app
├── __init__.py
├── main.py
├── report
| ├── __init__.py
| ├── data_ingest.py
| └── report_output.py
└── templates
└── output_template.docx
现在我无法让 report_output.py 文件找到 output_template.docx 文件,它现在位于烧瓶应用程序中。
def run_report(file):
data = data_ingest.Incident(file)
priority_count = dict(data.df_length())
size = sum(priority_count.values())
print(priority_count)
print(size)
report = report_output.Report()
report.header()
report.priority_header(0)
i = 0
if '1' in priority_count:
for _ in range(priority_count['1']):
field = data.fields(i)
report.priority_body(field)
i += 1
report.break_page()
report.priority_header(1)
else:
report.none()
report.priority_header(1)
if '2' in priority_count:
for _ in range(priority_count['2']):
field = data.fields(i)
report.priority_body(field)
i += 1
report.break_page()
report.priority_header(2)
else:
report.none()
report.break_page()
report.priority_header(2)
if '3' in priority_count:
for _ in range(priority_count['3']):
field = data.fields(i)
report.priority_body(field)
i += 1
report.break_page()
if '4' in priority_count:
for _ in range(priority_count['4']):
field = data.fields(i)
i += 1
output = OUTPUT_FILE+f"/Platform Control OTT Daily Report {data.field[0]}.docx"
report.save(output)
print(f"Report saved to:\n\n\t {output}")
def main(file):
run_report(file)
if __name__ == "__main__":
main()
这里是report_output.py(没有word格式部分):
from docx import Document
class Report(object):
def __init__(self):
self.doc = Document('./templates/pcc_template.docx')
self.p_title = ['Major Incident',
'Stability Incidents (HPI)',
'Other Incidents']
self.date = datetime.now().strftime('%d %B %Y')
def save(self, output):
self.doc.save(output)
format_report.py 文件内容比较多,不过跟app的功能有关。我卡住的地方是我如何让应用程序再次看到它自己的模板文件夹和其中的模板文件。
【问题讨论】:
-
如果这是一个重复的问题,请问它重复的问题在哪里,因为这可能解决了我的问题。
标签: flask python-import filepath