簡體   English   中英

Symfony-TCPdf-無法找到模板

[英]Symfony - TCPdf - Unable to find template

我陷入與TCPdf和Symfony一個煩人的錯誤:

request.CRITICAL: Uncaught PHP Exception InvalidArgumentException: "Unable to find template "" (looked into: /Applications/MAMP/htdocs/api/app/Resources/views)." at /Applications/MAMP/htdocs/api/vendor/symfony/symfony/src/Symfony/Bridge/Twig/TwigEngine.php line 128 {"exception":"[object] (InvalidArgumentException(code: 0): Unable to find template \\"\\" (looked into: /Applications/MAMP/htdocs/api/app/Resources/views). at /Applications/MAMP/htdocs/api/vendor/symfony/symfony/src/Symfony/Bridge/Twig/TwigEngine.php:128, Twig_Error_Loader(code: 0): Unable to find template \\"\\" (looked into: /Applications/MAMP/htdocs/api/app/Resources/views). at /Applications/MAMP/htdocs/api/vendor/twig/twig/lib/Twig/Loader/Filesystem.php:215)"} []

在我的控制器中,我只是創建一個pdf並輸出:

public function pdfAction()
{
    $pdf = ...;
    ...
    $pdf->output();
}

我最好的猜測是Symfony試圖返回一個Response(但是輸出已經給出了一個),因此出現了錯誤。 但是我找不到如何在Symfony中解決此問題的方法。 歡迎任何幫助或提示。

PS:pdf可以完美運行,只有monologger會向我發送錯誤消息..

供將來參考

這是我最終解決的方式:

$pdf->Output('output.pdf', 'I');
return new Response();

我嘗試了許多不同的選項,但這是唯一不會觸發該錯誤的選項。

使用Symfony,您需要將響應作為數組返回。

也許這段代碼可以工作:

$pdfOutput = $pdf->output();

return array('pdfOutput' => $pdfOutput); // or just try to return $pdf;

// If you don't use annotation : 
return $this->render('your-template.html.twig', array(
    'pdfOutput' => $pdfOutput
));

在模板中,如果要生成一些結果,則模板如下所示:

{{ dump(pdfOutput) }}

編輯

嘗試使用路徑作為參數

$ pdf-> Output(“ output.pdf”,'I');

TCPDF輸出文件

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM