2

我已经配置了这两条路线

$app->match ( '/controller/param/{country}/{q}', "demo.controller:demoAction" )->value ( 'country', 'de' )->value('q', '')->bind ( 'demo_action_with_country' );
$app->match ( '/controller/param/{q}', "demo.controller:demoAction" )->value ( 'q', '' )->bind ( 'demo_action_without_country' );

但是 - 这不起作用。如果我调用/controller/param/Test-String路由匹配并返回内容。如果我打电话,/controller/param/DE/Test-String我会得到NotFoundHttpException

我该如何解决这个问题?

4

1 回答 1

7

好的,我可以自己轻松解决。这是我的解决方案:

$app->match ( '/controller/param/{q}', "demo.controller:demoAction" )->value ( 'q', false )->bind ( 'demo_action_without_country' );
$app->match ( '/controller/param/{country}/{q}', "demo.controller:demoAction" )->value ( 'country', false )->value('q', '')->bind ( 'demo_action_with_country' );
于 2013-07-26T12:51:03.907 回答