doumie6223 2017-11-16 05:43
浏览 51
已采纳

无法在Cakephp中调用插件控制器

I have a plugin named as PanelAdmin. It has Controller UsersController.php and inside it there are different actions defined. I have called the default controller within the plugin through this code

$routes->connect('/PanelAdmin', ['plugin' => 'PanelAdmin','controller' => 'default','action' => 'index']);

but cannot call other controller if i hit this url:

http://localhost/multi_shopping/PanelAdmin/Users/

One thing more i want to clear is i have to define routes for all controllers actions in routes.php. Please solve my issue. Thanks

  • 写回答

1条回答 默认 最新

  • douxin1163 2017-11-16 16:05
    关注

    In your plugin routes.php make sure you are setting a fallback route.

    routes.php

    <?php
    use Cake\Routing\Route\DashedRoute;
    use Cake\Routing\RouteBuilder;
    use Cake\Routing\Router;
    
    Router::plugin(
        'PanelAdmin',
        ['path' => '/PanelAdmin'],
        function (RouteBuilder $routes) {
            $routes->fallbacks(DashedRoute::class);
        }
    );
    

    From the DashedRoute class:

    /**
     * This route class will transparently inflect the controller, action and plugin
     * routing parameters, so that requesting `/my-plugin/my-controller/my-action`
     * is parsed as `['plugin' => 'MyPlugin', 'controller' => 'MyController', 'action' => 'myAction']`
     */
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 微信小程序协议怎么写
  • ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
  • ¥20 怎么用dlib库的算法识别小麦病虫害
  • ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启
  • ¥15 java写代码遇到问题,求帮助
  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看