gpt4 book ai didi

php - 如何使用 KnpSnappyBundle PDF 和 Symfony2 加载 CSS 和图像?

转载 作者:行者123 更新时间:2023-12-01 23:07:51 29 4
gpt4 key购买 nike

我在加载 CSS 和图像资源时收到“需要身份验证”错误。

错误示例:

Warning: Failed to load http://reporter.dev:8888/css/fc84af4_part_1_bootstrap-editable_2.css (ignore)

我正在使用 KNP Snappy 包如下:

$html = $this->renderView(
'InterlatedReporter:Allocation:casual_calendar_pdf.html.twig',
array(
'casualCalendar' => $casualCalendar,
)
);

$filename = "export-casual-calendar-" . date("Ymd") . '.pdf';

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

twig 模板已经添加了绝对路径,如下所示。 URL 似乎使用 file://

{{ app.request.getSchemeAndHttpHost() ~ asset('css/sortable-theme-bootstrap.css') }}

我已经尝试过安全工作,开发防火墙已经到位:

dev:
pattern: ^/(_(profiler|wdt)|css|images|js)/
security: false

这是第一条规则。

我们根据 SensioFrameworkExtraBundle 使用 Controller 注释。

我也尝试过按照 Symfony 2 kpn snappy generate pdf with output meets security area 通过 session

如何加载资源?

最佳答案

我找到了解决方法。 file://是关键。

将基目录传递给模板:

$html = $this->renderView(
'InterlatedReporter.html.twig',
array(
'casualCalendar' => $casualCalendar,
'base_dir' => $this->get('kernel')->getRootDir() . '/../web' . $request->getBasePath()
)
);

并提供 Assets 的完整路径:

<link rel="stylesheet" href="{{ base_dir ~ asset('css/sortable-theme-bootstrap.css') }}">

关于php - 如何使用 KnpSnappyBundle PDF 和 Symfony2 加载 CSS 和图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32513430/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com