Routing 提供替代路由方法的最佳方式

Routing 提供替代路由方法的最佳方式,routing,content-management-system,symfony,Routing,Content Management System,Symfony,我希望将解析数据库存储页面的功能添加到symfony 2.0项目中。然而,我很好奇什么时候是挂接这个功能的最佳时机 根据Symfony 2生命周期,路由器需要生成控制器(可调用)。是否有任何方法或任何地方,我可以有效地创建我自己的路由器,可以选择和产生不同的控制器与不同的配置选项 理想情况下,我希望允许这种路由机制也传递它无法实现的路由。这样symfony就可以继续正常使用404之类的东西了。是的。您可以实现一个实现Symfony\Component\Routing\RouterInterfac

我希望将解析数据库存储页面的功能添加到symfony 2.0项目中。然而,我很好奇什么时候是挂接这个功能的最佳时机

根据Symfony 2生命周期,路由器需要生成控制器(可调用)。是否有任何方法或任何地方,我可以有效地创建我自己的路由器,可以选择和产生不同的控制器与不同的配置选项


理想情况下,我希望允许这种路由机制也传递它无法实现的路由。这样symfony就可以继续正常使用404之类的东西了。

是的。您可以实现一个实现
Symfony\Component\Routing\RouterInterface
——阅读
Symfony\Bundle\FrameworkBundle\Routing
中的类以查看实现示例

您可能需要做大量的挖掘才能完成,因为没有大量关于定制路由器的文档,而且(可能)它是一个不熟悉的代码库,但是我看到的所有Symfony2代码或多或少都遵循相同的模式,而且,您可以更轻松地知道在哪里查找以及需要执行哪些操作才能快速覆盖/实现自定义零件。代码非常干净,这是一个巨大的优势


我不知道您的实现具体需要什么,也许其他了解更多细节的人可以扩展。然而,我知道这不是不可能的,而且在大多数情况下,如果您实现满足您在
Symfony\Component\which
中看到的接口要求的类,您将能够实现您想要的功能。

这里有一种方法,尽管我不是非常喜欢: