Symfonyob娱乐下载 6.1新增功能:路由条件中的服务
2022年5月18日·发表的哈维尔Eguiluz
Symfony应用程序ob娱乐下载中的路由通常是简单的,包括将一些控制器方法映射到一些URL路径。但是,有时需要评估复杂的条件,以确定某些传入URL是否应该与给定的控制器匹配。这就是Symfony允ob娱乐下载许的原因使用表达式匹配路由.
在Syob娱乐下载mfony 6.1中,我们改进了路由条件,因此您也可以在这些表达式中调用服务。要做到这一点,请使用新的服务()
函数,并传递要调用的服务名称:
12 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
/ / src /控制器/ DefaultController.php名称空间应用程序\控制器;使用ob娱乐下载\包\FrameworkBundle\控制器\AbstractController;使用ob娱乐下载\组件\HttpFoundation\响应;使用ob娱乐下载\组件\路由\注释\路线;类DefaultController扩展AbstractController{#(路线(' /路'名称:“some_name”条件:“服务(“some_service”).someMethod()”,)公共函数someControllerMethod():响应{/ /……}}
默认情况下,出于性能考虑,您不能调用应用程序中定义的任何服务。相反,必须添加routing.condition_service
标签或# (AsRoutingConditionService)
属性为那些在路由条件下可用的服务:
1 2 3 4 5 6 7 8 9 10 11
使用ob娱乐下载\包\FrameworkBundle\路由\属性\AsRoutingConditionService;/ /……# (AsRoutingConditionService(别名:some_service)]类SomeService{公共函数someMethod():保龄球{/ /……}}
的别名
选项定义了如何在表达式中引用此服务,因此不必使用完整的服务名称(通常太长)。
发表在#生活在边缘
评论
评论截止。
为了确保评论保持相关性,旧帖子将被关闭。
Javier Eguiluz is a certified Symfony engineer.
Get certified! Online exams available in all countries.
Register Now