在Symfony/SonataUserBundle设置中调用方法setCurrentUri失败

mat*_*jay 9 symfony knpmenubundle sonata-user-bundle

我正在尝试使用SonataUserBundle设置Symfony.用户注册和登录工作正常.当我尝试调用/profile视图时,我收到以下错误:

Attempted to call method "setCurrentUri" on class "Knp\Menu\MenuItem" in F:\<my project path>\vendor\sonata-project\user-bundle\Block\ProfileMenuBlockService.php line 91. Did you mean to call: "setCurrent"?
Run Code Online (Sandbox Code Playgroud)

错误发生前"事件列表"中的最后一个通知

INFO - [cms::renderBlock] block.id=53, block.type=sonata.user.block.menu
Run Code Online (Sandbox Code Playgroud)

有没有人之前遇到此错误,可以提供有关如何解决它的信息?

TIA Matt

kix*_*kix 15

什么版本KnpMenuSonataBlockBundle您使用的?请检查你的composer.json确定.

setCurrentUri方法已被弃用的KnpMenu2.0版,而composer.jsonSonataBlockBundle不需要KnpMenu任何地方,但在dev安装.因此,这导致您可能需要knplabs/knp-menu-bundleSonata捆绑尚不支持的更新版本.

尝试要求knplabs/knp-menu-bundle1.1.x:

{
    ...
    "require": {
        "knplabs/knp-menu-bundle": "~1.1"
    },
    ...
}
Run Code Online (Sandbox Code Playgroud)