如何在Symfony中定义默认/其他路由?

Ger*_*ied 3 routes symfony symfony4

我这样定义路线:

// config/routes.yaml

index:
    path: /
    controller: App\Controller\IndexController::index
news:
    path: /news/{slug}
    controller: App\Controller\PageNewsController::show
Run Code Online (Sandbox Code Playgroud)

如果这些路由都不匹配,我想加载默认控制器,或重定向,或其他。但是,如何定义这样的默认路由?

allOthers:
    path: * <-- WHAT#HAS#TO#BE#PUT#HERE
    controller: App\Controller\ElseController::show
Run Code Online (Sandbox Code Playgroud)

我宁愿避免使用注释。

Mit*_*ava 7

是的,您可以设置默认路由并在没有路由匹配时拨打电话。您可以按照以下方式进行操作:

allOthers:
    path: /{regpattern}
    controller: App\Controller\ElseController::show      
    requirements:
        regpattern: ".+"
Run Code Online (Sandbox Code Playgroud)