gpt4 book ai didi

php - 在 Services.xml 中将工厂类和工厂方法转换为工厂

转载 作者:行者123 更新时间:2023-12-04 22:51:37 25 4
gpt4 key购买 nike

我正在使用 Symfony3 和我 noticedfactory-classfactory-method不存在了,但是factory确实存在。

这很令人沮丧,因为我想使用 pulse00/ffmpeg-bundle ,但 services.xml似乎是 3.0 之前的版本。

factory-class and factory-method

如您所见,4 个红色标记的属性是问题所在:

factory-class="%dubture_ffmpeg.ffmpeg.class%" factory-method="create"
factory-class="%dubture_ffmpeg.ffprobe.class%" factory-method="create"

示例(Symfony3 版本):
services:
newsletter_manager:
class: NewsletterManager
factory: [NewsletterManagerFactory, createNewsletterManager]

问题:

如何更新 services.xml 以使其与 Symfony3 一起正常工作?

我试过的:

我尝试将两者结合起来,但没有取得多大成功并使用 factory反而。但显然也不允许“工厂”。

错误:
$ php bin/console server:run 

我得到的错误:

The attribute 'factory-class' is not allowed.



error

最佳答案

捆绑包的缺点,尤其是当前从 2 切换到 3 的情况下,是您依赖于它们的维护者来更新代码以支持新版本。

解决此问题的正常程序:

  • Fork 存储库
  • 在 services.xml
  • 中应用修复
  • 提交拉取请求
  • 等待维护者合并它。

  • 如果维护者没有响应您的拉取请求,或者您现在真的需要它。您可以在 composer.json 存储库列表中添加指向 fork 的链接。
    https://getcomposer.org/doc/05-repositories.md#loading-a-package-from-a-vcs-repository

    然后它将安装您的 fork 版本,其中包含修复。

    关于php - 在 Services.xml 中将工厂类和工厂方法转换为工厂,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34881570/

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