symfony 如何 "wildcard everything" 路由
symfony how to "wildcard everything" route
我想通过以下方式在 Symfony 中创建一个路由:/admin/_api/*
和 /admin/*
。所以,总的来说,我想要一个像下面这样的配置:
/admin/_api/users
/admin/_api/posts
/admin/_api/comments
/admin/_api/* -> (AdminBundle:Error:api)
/admin/* -> (AdminBundle:Error:html)
根据给定的配置,如果用户转到 /admin/_api/test
,路由器将调度到 ErrorController::apiAction
。如果用户转到 /admin/users
,它将调度到 ErrorController:htmlAction
。
有办法实现吗?
也许可以根据要求尝试,在 routing.yml 中:
...
all your routes that should match first
...
admin_api_wildcard:
pattern: /admin/_api/{wildcard}
defaults: { _controller: AdminBundle:Error:api }
requirements:
wildcard: .*
在较新的 symfony 版本中 pattern
被 path
取代:
...
all your routes that should match first
...
admin_api_wildcard:
path: /admin/_api/{wildcard}
defaults: { _controller: AdminBundle:Error:api }
requirements:
wildcard: .*
我想通过以下方式在 Symfony 中创建一个路由:/admin/_api/*
和 /admin/*
。所以,总的来说,我想要一个像下面这样的配置:
/admin/_api/users
/admin/_api/posts
/admin/_api/comments
/admin/_api/* -> (AdminBundle:Error:api)
/admin/* -> (AdminBundle:Error:html)
根据给定的配置,如果用户转到 /admin/_api/test
,路由器将调度到 ErrorController::apiAction
。如果用户转到 /admin/users
,它将调度到 ErrorController:htmlAction
。
有办法实现吗?
也许可以根据要求尝试,在 routing.yml 中:
...
all your routes that should match first
...
admin_api_wildcard:
pattern: /admin/_api/{wildcard}
defaults: { _controller: AdminBundle:Error:api }
requirements:
wildcard: .*
在较新的 symfony 版本中 pattern
被 path
取代:
...
all your routes that should match first
...
admin_api_wildcard:
path: /admin/_api/{wildcard}
defaults: { _controller: AdminBundle:Error:api }
requirements:
wildcard: .*