やりたいこと
以下のように管理画面用にControllerをAdminフォルダにまとめて管理しようと思っております。
構成
src/Controller ┝**Controller.php ┝Admin/ // 管理画面用のControllerをまとめるフォルダ ┝**Controller.php ┗**Controller.php
CategorysControllerの中身
php
1namespace App\Controller\Admin; 2 3use App\Controller\AppController; 4 5 6class CategorysController extends AppController 7{ 8 public function index{ 9 // 処理内容 10 } 11}
やったこと
上記を参考に以下のように実装してみました。
php
1<?php 2 3use Cake\Routing\Route\DashedRoute; 4use Cake\Routing\RouteBuilder; 5use Cake\Routing\Router; 6 7$routes->setRouteClass(DashedRoute::class); 8$routes->scope('/', function (RouteBuilder $builder) { 9 10 /* フロントページ */ 11 // TOP 12 $builder->connect('/', ['controller' => 'home', 'action' => 'index']); 13 14 15 /* 管理画面 (この下を追加) */ 16 Router::prefix('Admin', function ($routes) { 17 // カテゴリ 18 $routes->connect('/categorys', ['controller' => 'categorys', 'action' => 'index']); 19});
エラー
controllerが見つからないと表示エラーが出てしまいました(画像クリック別タブで表示されます)
試したこと
- キャッシュクリア(bin/cake cache clear_all)
- 以下composer.jsonのautoloadの追加(すみません、ここはあまり分かりませんでしたわかりませんでした・・)
javascript
1 "autoload": { 2 "psr-4": { 3 "App\": "src/", 4 "App\Controller\Admin\": "src/Controller/Admin/" // 追加 5 } 6 }
よろしくお願いします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。