【问题标题】:Best way to provide alternative routing methods提供替代路由方法的最佳方式
【发布时间】:2011-06-26 20:48:06
【问题描述】:

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

根据 Symfony 2 生命周期,路由器被要求产生一个控制器(可调用)。有什么方法或任何地方可以有效地创建我自己的路由器,可以选择和生产具有不同配置选项的不同控制器?

理想情况下,我希望允许此路由机制也传递它无法完成的路由。这样 symfony 就可以继续像 404 等行为一样正常运行...

【问题讨论】:

标签: routing content-management-system symfony


【解决方案1】:

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

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

我不知道您的实施究竟需要什么的细节,也许知道更多细节的其他人可以扩展。但是,我知道这并非不可能,而且在大多数情况下,如果您实现的类能够满足您在Symfony\Component\Whatever 中看到的接口要求,那么您将能够实现您想要的。

【讨论】:

    猜你喜欢
    • 2021-12-09
    • 2011-09-21
    • 2022-01-05
    • 1970-01-01
    • 2013-11-15
    • 2020-02-12
    • 2021-03-28
    • 1970-01-01
    • 2021-03-10
    相关资源
    最近更新 更多