composer-php - Yii2 错误:yii\base\UnknownMethodException:调用未知方法:yii\web\UrlManager::addRules()

标签 composer-php yii2

在今天更新 Composer 依赖项(使用 composer update 命令)之后,我的 Yii2 应用程序损坏了 - 它抛出 未知方法 – yii\base\UnknownMethodException:调用未知方法:yii\web\UrlManager::addRules()

在检查 vendor/yiisoft/yii2/web/UrlManager.php 文件后,我发现没有方法 addRule。
并且整个类 UrlManager 与存储库中的类不同。

我的 Composer .json:

"minimum-stability": "dev",
"require": {
    "php": ">=5.4.0",
    "yiisoft/yii2": "*",
    "yiisoft/yii2-bootstrap": "*",
    "yiisoft/yii2-swiftmailer": "*",
    "yiisoft/yii2-gii": "2.0.0-beta",
    "claudejanz/yii2-mygii": "*",
    "kartik-v/yii2-grid": "dev-master",
    "kartik-v/yii2-builder": "dev-master",
    "2amigos/yii2-switch-widget": "*",
    "yiisoft/yii2-jui": "*",
    "DsXack/yii2-underscore": "*",
    "2amigos/yii2-editable-widget": "*",
    "warrence/yii2-kartikgii": "*"
},
"require-dev": {
    "yiisoft/yii2-codeception": "*",
    "yiisoft/yii2-debug": "*"
},

最佳答案

我认为他们已经改变了一些库通过 Composer 加载的方式。

要解决它:

添加到 composer.json

 "extra": {
        "asset-installer-paths": {
            "npm-asset-library": "vendor/npm",
            "bower-asset-library": "vendor/bower"
        }
    }

并运行:
# php composer.phar global require "fxp/composer-asset-plugin:1.0.*@dev"
# php composer.phar update --dev

更多信息:Issue on GithubIssue on Github

完全归功于:@githubjeka 和 @SonicGD

关于composer-php - Yii2 错误:yii\base\UnknownMethodException:调用未知方法:yii\web\UrlManager::addRules(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25884038/

相关文章:

php - 尝试了解如何在命名空间中添加我自己的类

Yii2实现 'User Last Seen'更新

gridview - 具有 beforeValidate() 值的 yii2 gridview 过滤器

php - Composer 更新在我的情况下不起作用

server - 出于安全原因,Composer escapeshellarg() 已被禁用

php - 在 Symfony2 中添加 CSS 或 JS 库作为 Composer 依赖项的正确方法是什么?

symfony - 升级我的 Symfony2 应用程序以使用 Composer

php - Yii 2 初始化组件

yii2 - 无法使用 Swiftmailer 和 Yii2 嵌入图像

php - Yii2:如何在不同的数据库表中登录前端和后端?