我需要帮忙在CodeIgniter 4中使用子目录控制器。
出于某些原因,我就是不能让它工作。
这是一个例子的URL: www.example.com/admin/dashboard
在控制器文件夹中,我创建了一个名为Admin
的文件夹和一个名为Dashboard.php
的文件。
我在Dashboard.php
中使用了这段代码:
namespace App\Controllers;
class Dashboard extends BaseController
{
public function index()
{
}
}
我尝试将类名更改为AdminDashboard
,Admin_Dashboard
以及其他逻辑名称,但每次都会出现404错误,显示:
控制器或其方法未找到: App\Controllers\Admin\Dashboard::index
我知道文件本身成功加载,但我认为我没有正确声明类名,它一直向我抛出那些404错误。
不幸的是,CI4的文档没有提供有关应该如何命名类名的任何信息......
更新#1
我通过更改几件事情使其工作:
namespace App\Controllers\Admin;
use CodeIgniter\Controller;
class Dashboard extends Controller
{
public function index()
{
}
}
但现在它不会继承 BaseController
,而我为我的应用程序构建了一些核心功能。
有任何想法如何让它扩展 BaseController
吗?
我必须承认我对命名空间的了解并不多,所以这可能是我错误的原因。