从Twig链接到Symfony 4中的一条全包路线

从Twig链接到Symfony 4中的一条全包路线,symfony,symfony4,Symfony,Symfony4,在我的config/routes.yaml中,我设置了如下路由: frontend: path: /{path} controller: App\Controller\FrontendController::index requirements: path: .* 这是我在项目中需要的一种“全包”或“退路” 是否可以定义某种反向URL?例如,当我想从细枝模板中链接到命名路由时: {{ path('frontend') }} 我目前遇到了一个错误 在呈现模板期间引发了异常(

在我的config/routes.yaml中,我设置了如下路由:

frontend:
  path: /{path}
  controller: App\Controller\FrontendController::index
  requirements:
    path: .*
这是我在项目中需要的一种“全包”或“退路”

是否可以定义某种反向URL?例如,当我想从细枝模板中链接到命名路由时:

{{ path('frontend') }}
我目前遇到了一个错误

在呈现模板期间引发了异常(“缺少某些必需参数(“路径”),以生成路由“前端”的URL)


很明显。我能否在YAML上下文中定义一个默认的目标路径,如“
/
”?(而不是每次都将其硬编码到模板中)。

您可以在YAML中为路径添加默认值:

frontend:
    path: /{path}
    controller: App\Controller\FrontendController::index
    defaults: { path : ''}
    requirements:
      path: .*
* @Route("/{path}", defaults={"path"=""})
或者如果您的路线是使用注释配置的:

frontend:
    path: /{path}
    controller: App\Controller\FrontendController::index
    defaults: { path : ''}
    requirements:
      path: .*
* @Route("/{path}", defaults={"path"=""})

看看yaml的例子。亲爱的迪伦,谢谢。请您更新您的答案,以反映我的确切路线。我给出的yaml示例?只需将YAML示例替换为“defaults:{path:'}”-这样就行了。