Silex添加优先级高于现有路由的路由

时间:2015-04-10 10:47:40

标签: php symfony routes silex bolt-cms

我的Silex路由在routing.yml配置文件中定义。

在我的php代码中,我想动态添加一些新路由,我希望这些路由的优先级高于routing.yml中定义的路由。

目前我按照以下示例添加路线,但它们会添加到底部,即优先级最低。

    $this->app->match('/page/{slug}', array($this, 'record'))
        ->bind('extrapages')
        ->method('GET|POST');

例如,此路由永远不会匹配,因为在routing.yml中存在与以下路径匹配的路由:

path: /{contenttypeslug}/{slug}

如何在现有路线上方添加新路线?

另外,我使用了基于Silex的Bolt CMS,并试图在螺栓扩展中添加这些新路线。由于这个问题与Silex路由有关,因此我使用Bolt的事实不会产生很大的不同。

1 个答案:

答案 0 :(得分:1)

这不是一个非常干净的解决方案,但每当我在routing.yml中推翻了分机的路线时,我只需将分机的路线添加到{{1再次,指向我的扩展代码。如果你把它放在顶部附近,它就会被使用,因为在Silex中,路线被解析为“自上而下”。第一场比赛被使用。

routing.yml

我为这个解决方案的hackyness道歉。