【发布时间】:2016-12-13 07:07:36
【问题描述】:
我正在从另一个函数调用一个函数。
我正在调用的函数
@app.route('/csv/')
def download_csv(p):
csv = p
response = make_response(csv)
cd = 'attachment; filename=RosterUnified.csv'
response.headers['Content-Disposition'] = cd
response.mimetype='text/csv'
return response
在我的 HTML 中,这与单击“下载”按钮相关联。
我是从内部调用的:
@app.before_request
def ros_before_app():
.
.
.
z=open(Filename1)
with z as f:
p = f.read()
download_csv(p)
z.close()
else:
z1=open(Filename)
with z1 as f1:
p = f1.read()
download_csv(p)
控制台报错:
return self.view_functions[rule.endpoint](**req.view_args)
TypeError: download_csv() missing 1 required positional argument: 'p'
点击“下载”按钮导致下载失败,服务器问题
【问题讨论】:
-
如果你在download_csv函数中使用
p作为参数,它必须在路由中。在此示例中,您不能在 url 中放置函数(只有 string 或 int 有效)。您必须导入 p 函数。
标签: python python-3.x flask jinja2