在 CakePHP 3.6 中如何 link 到可下载文件?

How do I link to a downloadable file in CakePHP 3.6?

如何 link 在 CakePHP 3.6 中下载文件?该文件是 webroot/files/filename.pdf

我可以使用

创建link
$this->Html->link('Link text', '/files/filename.pdf');

但是当我点击它时,我收到消息 "FilesController could not be found."。

我搜索了文档和在线,但找不到任何提及此内容的内容。

感谢 David,我意识到就 Cake 而言,我做的是正确的事情,但使用了错误的文件名并链接到服务器上不存在的文件。

您需要在锚标记中传递下载属性。对于 cakephp 3,你可以传递类似

的东西
$this->Html->link('Link text', '/files/filename.pdf',['download'=>'filename.pdf']);

$this->Html->link('Link text', '/files/filename.pdf',array('download'=>'filename.pdf'));