【发布时间】:2019-07-12 17:27:24
【问题描述】:
最近我将系统升级到 Symfony 4.2,在我的一个页面中,我遇到了错误提示
Call to protected method Symfony\Bundle\FrameworkBundle\Controller\Controller::generateUrl() from context 'Acme\Bundle\Security\Listener\SecurityListener'
显示错误的行:
$this_url = $controller[0]->generateUrl($event->getRequest()->get('_route'), $event->getRequest()->get('_route_params'));
请告诉我,我还剩下什么吗?
【问题讨论】:
-
受保护的方法仅在类实例中可见,这意味着您不能从类外部使用它们。可以将它们与反射一起使用,但不建议这样做。
-
$controller的内容是什么? -
如果你扩展类你可以使用它,但它应该用方法扩展类。
-
SecurityListener.php on line 45: array:2 [▼ 0 => AcmeController {#583 ▼ -country_name: array:249 [▶] +email_sender: array:1 [▶] #container: appAppKernelDevDebugContainer {#460 …20} } 1 => "acmeAction" ] 这是控制器 @D4V1D 的内容
-
@ArtisticPhoenix 我确实找到了网址api.symfony.com/master/Symfony/Bundle/FrameworkBundle/…,但无法扩展特征。请检查。
标签: php symfony symfony4 php-7.1 symfony-4.2