如何降级 symfony2 捆绑包 knp_compnent?

Posted

技术标签:

【中文标题】如何降级 symfony2 捆绑包 knp_compnent?【英文标题】:how to downgrade symfony2 bundles knp_compnent? 【发布时间】:2014-12-15 12:54:09 【问题描述】:

我是新手,面临“手动计数”的问题,该问题在 KnpPaginatorBundle 中不起作用,我得到了必须降级捆绑包的解决方案,但我什至不知道如何降级 knplabs/knp-components 或 knplabs/knp-分页器包。有人帮帮我吗?

【问题讨论】:

【参考方案1】:

您没有告诉我们您目前拥有哪个版本,或者您想降级到哪个版本。

但是,请遵循以下简单步骤:

转到Packagist's knp-components page 找到您要降级到的确切版本 将该版本标签放入您的composer.json 运行php composer.phar update "knplabs/knp-components"

或者,您可以完全删除 knp-componets 并重新安装它,但这有点不必要。

编辑:

根据您的评论,我看到您遇到的问题似乎是什么。我可以想到两种方法来解决这个问题:

    下载当前knp-components.tar 并降级knp-paginator 并将它们放入您的src。从您的作曲家依赖列表中删除 knp-paginator 并更新供应商。我建议不要这样做。

    knplabs/knp-paginator 项目分叉到您自己的项目中,并通过指定所需的knplabs/knp-componets 版本来编辑他们的composer.json 文件。然后将你的叉子插入你的composer.json 并更新供应商。这绝对是最好的方式。

希望这会有所帮助。

编辑2:

通过VCS引用你的fork:


    "repositories": [
        
            "type": "vcs",
            "url": "https://github.com/modernmonkslab/KnpPaginatorBundle1"
        
    ],
    "require": 
        "knplabs/knp-paginator-bundle": "dev-master"
    

这应该可以工作,因为你的 fork 是 public

【讨论】:

我的 composer.json 文件中没有“knplabs/knp-components”条目,它是“knplabs/knp-paginator”的依赖项。 啊,我明白了。我已经编辑了我的答案以包含一些替代解决方案。 我正在尝试您的第二个选项,我在这里创建了我的叉子github.com/modernmonkslab/KnpPaginatorBundle。 太棒了!我假设您必须在 packagist.org 上注册您的分叉? 我得到这个“名称为 knplabs/knp-paginator-bundle 的包已经存在。”当我添加github.com/modernmonkslab/KnpPaginatorBundle1.git

以上是关于如何降级 symfony2 捆绑包 knp_compnent?的主要内容,如果未能解决你的问题,请参考以下文章

Symfony2:如何在包之间共享 js 库和 css

Symfony 2.x 中的所有东西都应该是一个捆绑包吗?

Symfony - 如何覆盖不在捆绑包中的供应商组件

如何降级捆绑器或升级导轨?

如何在 Symfony2 中制作高级 ACL?

如何覆盖 FOS 用户捆绑表单标签