如何解决Symfony 5-下载通过vich上传的文件
在添加功能上载文件或感谢捆绑包“ vich”的许多文件后,我将下载上载的文件。我的文件保存到创建到根文件夹的上载文件夹中。
我有这段代码,但是错误提示“找不到文件”。
<a download class="btn btn-info btn-sm" href="{{'upload/' ~ document.image }}"><i class="fas fa-file-download"></i> {{ document.image }} </a>
解决方法
要在使用Vich上载程序包时下载文件,必须在控制器类中创建一个函数,然后从模板中调用它。
例如:
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Vich\UploaderBundle\Handler\DownloadHandler;
class MyController extends AbstractController
{
/**
* @Route(...)
*
* @param Document $document The document to download
* @param DownloadHandler $downloadHandler Handler
*
* @return Response
*/
public function downloadDocument(Document $document,DownloadHandler $downloadHandler): Response
{
return $downloadHandler->downloadObject($document,'documentFile');
}
}
有关更多信息,请参见VichUploaderBundle serving_files_with_a_controller
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。