我需要在CodeIgniter 4中使用子目录控制器的帮助。
我只是因为某些原因不能让它工作。
这是以下示例的URL:第一个月
在controllers文件夹中,我创建了一个名为Admin
的文件夹和一个名为Dashboard.php
的文件。
我在Dashboard.php
中使用了以下代码:
namespace App\Controllers;
class Dashboard extends BaseController
{
public function index()
{
}
}
我尝试将类名更改为AdminDashboard
,Admin_Dashboard
,几乎所有逻辑名称,但每次我都得到一个404错误,说:
找不到控制器或其方法:应用程序\控制器\管理员\ Jmeter 板::索引
我知道文件本身会成功加载,但我认为我没有正确声明类名,它一直向我抛出那些404错误。
不幸的是,CI4的文档没有提供任何关于类名应该被称为什么的信息...
更新#1
我通过改变几件事成功地让它运转起来:
namespace App\Controllers\Admin;
use CodeIgniter\Controller;
class Dashboard extends Controller
{
public function index()
{
}
}
但现在它不会扩展BaseController
,它有一些核心功能,我为我的应用程序。
关于如何扩展BaseController
有什么想法吗?
我必须承认,我对命名空间还没有太多的了解,所以这可能是我犯错误的原因。
4条答案
按热度按时间yk9xbfzb1#
正如我想象的那样,问题是我没有学习命名空间,我需要将
use
行指向BaseController位置。现在,
www.example.com/admin/dashboard/
直接进入该索引函数,正如预期的那样。e5nszbig2#
svujldwt3#
我可以用这个设置绘制Map。
dgtucam14#
路由Map可以简单到: