使用cakephp3,如何自定义路线中的方法和动作

时间:2018-09-21 22:10:32

标签: php routing cakephp-3.0

我知道POST方法默认在控制器中指向add()中的cakephp3。是否可以自定义并将POST方法指向index()?如下所示:

Router::connect(
    '/test',
    array(
        'controller' => 'Test',
        'action' => 'index',
        '[method]' => 'POST'
    )
);

1 个答案:

答案 0 :(得分:0)

感谢@ndm为我的问题提供了非常清晰的解决方案。

我的问题之一是我有$routes->resources('Test');,它将禁用@ndm的解决方案。因此,首先,我注释了$routes->resources('Test');行。

由于我没有在一个坚实的项目上工作,这是一个狭窄的临时项目,所以下面的代码现在对我来说是完美的。

Router::scope('/', function ($routes) {
    $routes->setExtensions(['json']);
//    $routes->resources('Test');

    $routes->post(
        '/test',
        ['controller' => 'Test', 'action' => 'add']
    );
});