我在我的ZF2應用程序中使用AbstractRestfulController作爲控制器。這個控制器實現了create(),update()等。Zend Framework 2 RestfulController其他操作
是否有可能在這些REST函數旁邊有動作?
E.g.我想要有:url.com/model/id來獲取模型(這已經有效),但我也希望能夠調用url.com/model/doSomething。
我試着用child_routes,但沒有奏效:
'car' => array(
'type' => 'literal',
'options' => array(
'route' => '/car',
'defaults' => array(
'controller' => 'CarDealer\Controller\Car',
'action' => 'index'
),
),
'child_routes' => array(
'rest' => array(
'type' => 'segment',
'options' => array(
'route' => '[/:id]',
'constraints' => array(
'id' => '[0-9]+',
),
'defaults' => array(
'controller' => 'CarDealer\Controller\Car',
),
),
),
'actions' => array(
'type' => 'segment',
'options' => array(
'route' => '[/:action]',
'constraints' => array(
'action' => '[a-zA-Z][a-zA-Z0-9_-]*',
'id' => '[0-9]+',
),
'defaults' => array(
'controller' => 'CarDealer\Controller\Car',
'action' => 'index',
),
),
),
),
),
我敢肯定上述犯規賺那麼多道理,但我無法找到合適的線索把事情的工作。
感謝您的幫助!
這不符合REST的工作原理......您應該最終將不同的路徑(又名資源URI)映射到不同的操作。你可以做的是使用自定義HTTP方法(動詞),而不是 – Ocramius 2013-02-14 18:32:06
這是我的預期:)謝謝,我將使用不同的控制器。 – dide 2013-02-15 08:20:02