2015-07-30 3 views
-3

У меня проблема с комплектом Knp-Snappy в моем проекте Symfony2. Я установил его по этой ссылке: http://knpbundles.com/KnpLabs/KnpSnappyBundle. Всякий раз, когда я нажимаю на ссылку для создания PDF-файла из представления Twig, он отображает только HTML-страницу и не создает PDF-файл.Symfony 2 - Создание PDF с выходом Knp-Snappy HTML

Вот часть печати моего контроллера.

$html = $this->renderView('PACESColleBundle:Classement:generationPDF.html.twig', array(
     "passercolles" => $passercolles, 
     "colle" => $colle, 
     "moyenne" => $moyenne, 
     "mediane" => $mediane, 
     "effectif" => $effectif, 
     "note100" => $note100 
    )); 

    return new Response(
     $this->get('knp_snappy.pdf')->getOutputFromHtml($html), 
     200, 
     array(
      'Content-Type'   => 'application/pdf', 
      'Content-Disposition' => 'attachment; filename="classement.pdf"' 
     ) 

    ); 
+0

Вы должны удалить шум из своего примера кода и предоставить [MCVE] (https://stackoverflow.com/help/mcve). – Lumen

ответ

0

Я думаю, что что-то на ваш взгляд производит уведомления/предупреждения, заголовки будут отправлены и в этот момент слишком поздно, чтобы отправить ответ PDF.

Удалить поколение просмотра и просто передать статический HTML, чтобы проверить саму генерацию PDF, т.е .:

$html = "Just a sample text to produce the PDF"; 

return new Response(
    $this->get('knp_snappy.pdf')->getOutputFromHtml($html), 
    200, 
    array(
     'Content-Type'   => 'application/pdf', 
     'Content-Disposition' => 'attachment; filename="classement.pdf"' 
    ) 
); 

Также, пожалуйста, внимательно проверьте журналы приложений в /app/logs/*.log.

Смежные вопросы