123... 发表于 2022-12-14 11:44:16

flask send_from_directory,为什么会返回找不到url

return send_from_directory(path=f"./excel/{start}到{end}查询表格.xlsx",
                               directory='./excel',
                               filename=f"{start}到{end}查询表格.xlsx",
                               as_attachment=True)

提示如下

未找到
在服务器上找不到请求的 URL。如果您手动输入了 URL,请检查您的拼写,然后重试。



文件是存在的
我直接在网址输入文件地址,是可以直接下载的

阿奇_o 发表于 2022-12-14 15:57:17

自己好好检查,看它到底读取的路径 究竟是什么 (一般报错会提到 )

有一个值得怀疑的点:
你这里 send_from_directory() 还指定了 directory='./excel',那么是不是 path它就是那个diretory里找,这样一来。。
真正找的路径是不是就变成了: ./excel/excel/....xlsx??—— 你是这样存放的吗?

123... 发表于 2022-12-14 16:24:41

阿奇_o 发表于 2022-12-14 15:57
自己好好检查,看它到底读取的路径 究竟是什么 (一般报错会提到 )

有一个值得怀疑的点:


路径是./excel/xxxx.xlsx
这样的话,参数那里应该怎么填啊,大佬?

123... 发表于 2022-12-14 16:37:01

阿奇_o 发表于 2022-12-14 15:57
自己好好检查,看它到底读取的路径 究竟是什么 (一般报错会提到 )

有一个值得怀疑的点:


directory='./excel'这个不填就报错

阿奇_o 发表于 2022-12-14 16:41:36

123... 发表于 2022-12-14 16:37
directory='./excel'这个不填就报错

你就不能改改 path ?已经指定到directory了,即 已经去到 excel这个目录里了,再沿着 path 找!

难道 "路径拼接" 的例子,没见过??

123... 发表于 2022-12-14 17:01:10

阿奇_o 发表于 2022-12-14 16:41
你就不能改改 path ?已经指定到directory了,即 已经去到 excel这个目录里了,再沿着 path 找!

...

问题是path不写excel直接写成./xxx.xlsx或者直接写成xxx.xlsx 都报错啊

123... 发表于 2022-12-14 17:02:35

阿奇_o 发表于 2022-12-14 16:41
你就不能改改 path ?已经指定到directory了,即 已经去到 excel这个目录里了,再沿着 path 找!

...

TypeError: send_file() got an unexpected keyword argument 'filename'
报错这个
页: [1]
查看完整版本: flask send_from_directory,为什么会返回找不到url