gpt4 book ai didi

python - Flask 调用另一个函数

转载 作者:太空宇宙 更新时间:2023-11-03 15:52:45 24 4
gpt4 key购买 nike

我正在从另一个函数调用一个函数。

我正在调用的函数

@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'

点击“下载”按钮时提示下载失败,服务器出现问题

最佳答案

在 Flask 中 @app.route('/')装饰器必须包含传递给函数的任何参数。您可以通过添加 <var> 来做到这一点标记到网址。所以你的代码可能看起来像这样,

@app.route('/csv/<p>')
def download_csv(p):
csv = p
# continue code here...

变量,csv等于 file如果 URL 是 .../csv/file 。注意,不要说 <p>我们放入一个传递给函数的参数。

有关此装饰器中变量传递的更多信息,请参阅 Flask's Variable Rules

关于python - Flask 调用另一个函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41115381/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com