Symfony 多个路由指向同一个动作

Symfony multiple routes pointing to the same action

我的 Symfony 应用程序有一个现有路由,log/add 成功调用了函数 addAction

最近我不得不添加该路由的一个变体,它在末尾有一个时间戳,就像这样,log/add/1429228800。我需要的是第二条路线指向与第一条相同的动作。

我的问题是第二条路线产生以下错误:

No route found for "GET /log/add/1429228800"

我的路由在yml中设置如下:

log_add:
    pattern:   /log/add
    defaults:  { _controller: MyBundle:Default:add }

log_add_timestamped:
    pattern:   /log/add/{timestamp}
    defaults:  { _controller: MyBundle:Default:add }

你只需要一条路线

log_add:
    pattern:   /log/add/{timestamp}
    defaults:  { _controller: MyBundle:Default:add, timestamp: null}

为时间戳参数设置默认值(在我的示例中为null,但您可以设置其他值)