如果参数为空,如何以不同方式路由请求

How to route differently a request if param empty

在 Symfony 4.3 上,我正在尝试以不同方式路由如下请求:

index:
  path: /{param}
  controller: App\Controller\MyController::doSomethiing
home:
  path: /
  controller: App\Controller\HomeController::home

但是如果我尝试访问 /,程序会输入带有空参数的 MyController::doSomething

我通过检查 MyController::doSomething 方法中的 param 是否为空来完成我想要的操作,但我认为这不是正确的方法。

有没有办法从 routes.yaml 文件中做到这一点?

好的,总算找到了。这只是关于顺序。正确的配置文件是:

home:
  path: /
  controller: App\Controller\HomeController::home
index:
  path: /{param}
  controller: App\Controller\MyController::doSomething