我正在使用zend url helper和其他/query
生成url地址,正如我发现的那样
here。
在配置文件中,我设置了类似的路由器:
'my_name' => array(
'type' => 'segment',
'options' => array(
'route' => '/my_name/:id/some_action[/:id2]',
'constraints' => array(
'id' => '[0-9]+',
'id2' => '[0-9]+',
),
'defaults' => array(
'controller' => 'MyController',
),
),
'may_terminate' => true,
'child_routes' => array(
'query' => array(
'type' => 'Query',
'options' => array(
'defaults' => array(
)
)
),
),
),
我收到生成的链接,看起来像这样:
http://my_address/my_name/:id/some_action/?controller=MyController&limit=1&action=get&offset=2
我想要删除controller
和action
参数,我不会设置这些参数,并且只显示我自己提供的参数。
在路由器配置中是否有任何选项?或者也许还有其他方法可以得到我想要的东西?
答案 0 :(得分:0)
您的路线或默认设置中未指定操作。您需要能够识别匹配路由时要调用的操作(方法)。
'route' => '/my_name/:id/:action[/:id2]', // allow action passed thru
'constraints' => array(
'id' => '[0-9]+',
'id2' => '[0-9]+',
),
'defaults' => array(
'controller' => 'MyController',
'action' => 'some_action', // or specify a default action to use
),