【问题标题】:knp-snappy-bundle has private serviceknp-snappy-bundle 有私人服务
【发布时间】:2018-07-10 14:10:54
【问题描述】:

从 Symfony 2.2 更新到 Symfony 3.4 后出现错误

“knp_snappy.pdf”服务或别名已被删除或内联 容器已编译。你要么公开,要么停止 直接使用容器,改用依赖注入。

config.yml

knp_snappy:
  pdf:
    enabled: true
    binary:  '%knp_snappy_pdf_binary%'
    options: []

在控制器动作中:

$html = $this->renderView(
    'FsaBundle:Registration:registrationEmail.html.twig', ['data' => $data]
);

$pdf = $this->get('knp_snappy.pdf')->getOutputFromHtml($html);
...

如何将knp_snappy.pdf公开?

【问题讨论】:

  • 作曲家需要什么版本的KnpSnappyBundle
  • “knplabs/knp-snappy-bundle”:“1.5”

标签: php symfony dependency-injection knp-snappy


【解决方案1】:

KnpSnappyBundle 升级到1.5.2:他们已经为您完成了。 如果您要重新定义服务(应该没用),请将public: true 放在定义中。

此外,将^1.5 作为composer.json 中的版本,以便接收此捆绑包的所有兼容升级(< 2)(我建议对semantic versioning 之后的每个第三方代码都这样做) 在composer update

如果您想了解更多关于 composer 及其约束的信息,请查看^ (caret) documentation

【讨论】:

猜你喜欢
  • 2015-01-31
  • 1970-01-01
  • 1970-01-01
  • 2016-09-04
  • 2014-03-28
  • 2015-05-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多