例如简单的控制器:
/**
* @Route("/{identifier}", name="page")
*/
public function page(Request $request, string $identifier)
{
$page = $this->pageRepository->findOneBy(['identifier' => $identifier]);
if (!$page || !$page->getEnabled()) {
throw $this->createNotFoundException();
}
return $this->render('cms/index.html.twig', []);
}
并且有一个捆绑包来管理来自管理页面 elfinder 的图像,它将进入/elfinder链接。
而不是得到捆绑控制器,我的控制器得到了。
/{identifier} === /elfinder
人们在这种情况下通常会如何行动?
我尝试设置不同的优先级,但没有帮助
尝试使用 annotations.yaml 文件中所需的优先级添加控制器。因此,如果您在第一个控制器中得到 404,Symfony 将尝试从下一个控制器打开路由
将您的控制器添加到config/routes/annotations.yaml
page:
resource: App\Controller\_YourFistController_
type: annotation
elfinder:
resource: FM\ElfinderBundle\Controller\ElFinderController
type: annotation
或者如果这个选项不适合你,那么你可以试试可选参数priority
。symfony 文档
添加到配置文件config/routes.yaml
:
elfinder:
path: /elfinder/{instance}/{homeFolder}
priority: 2
controller: FM\ElfinderBundle\Controller\ElFinderController::show
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句