gpt4 book ai didi

codeigniter - 如何在 CodeIgniter 4 中使用子目录 Controller ?

转载 作者:行者123 更新时间:2023-12-03 16:02:37 25 4
gpt4 key购买 nike

我需要在 CodeIgniter 4 中使用子目录 Controller 的帮助。

我只是因为某种原因无法让它工作。

这是 URL,例如:www.example.com/admin/dashboard
在 Controller 文件夹中,我创建了一个名为 Admin 的文件夹。 ,以及一个名为 Dashboard.php 的文件.

我在 Dashboard.php 中使用了此代码:

namespace App\Controllers;

class Dashboard extends BaseController
{
public function index()
{

}
}

我尝试将类名更改为 AdminDashboard , Admin_Dashboard ,几乎所有的逻辑名称,但每次我收到 404 错误时,都会说:

Controller or its method is not found: App\Controllers\Admin\Dashboard::index



我知道文件本身已成功加载,但我认为我没有正确声明类名,它不断向我抛出那些 404 错误。

不幸的是,CI4 的文档没有提供关于类名应该被称为什么的任何信息......

更新 #1

我设法通过改变一些事情来使它工作:
namespace App\Controllers\Admin;
use CodeIgniter\Controller;

class Dashboard extends Controller
{
public function index()
{

}
}

但现在它不会扩展 BaseController它具有我为我的应用程序构建的一些核心功能。

关于如何使其扩展的任何想法 BaseController ?

我必须承认,我对命名空间的了解还不多,所以这可能是我犯错的原因。

最佳答案

正如我想象的那样,问题是我没有学习命名空间。
我需要指出use行在 BaseController 位置。

namespace App\Controllers\Admin;
use App\Controllers\BaseController;

class Dashboard extends BaseController
{
public function index()
{

}
}

现在 www.example.com/admin/dashboard/按预期直接转到该索引函数。

关于codeigniter - 如何在 CodeIgniter 4 中使用子目录 Controller ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61133250/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com