我正在使用带有模块的 codeigniter 4。我收到错误无效文件:Admin/valid_faq.php 视图路径有什么问题?我的模块结构如下
app
--modules
-- Faq
--controller
--Models
--Views
--Admin
--view_faq
echo view('layout/header', $data);
echo view('layout/sidebar');
echo view('Admin/view_faq', $data);
echo view('layout/footer');
我已经给出了完整的路径,然后它也不起作用。
echo view('App/Modules/Faq/Views/Admin/view_faq');
echo view('Modules/Faq/Views/Admin/view_faq');
我也添加到了 Autoload
public $psr4 = [
APP_NAMESPACE => APPPATH, // For custom app namespace
'Config' => APPPATH . 'Config',
'Modules' => APPPATH . 'Modules',
];
当我检查视图文件 SYSTEMPATHCommon.php : 1121 — CodeIgniterViewView->render ( arguments )
F:xampphtdocsmodularcmsappConfig/../Views/Modules/Faq/Views/Admin/view_faq.php
这是有效的
echo view('../Modules/Faq/Views/Admin/view_faq', $data);
我在路径中的视图目录
public $viewDirectory = __DIR__ . '/../Views';
误差函数
public static function renderer(string $viewPath = null, $config = null, bool $getShared = true)
{
if ($getShared)
{
return static::getSharedInstance('renderer', $viewPath, $config);
}
if (is_null($config))
{
$config = new ConfigView();
}
if (is_null($viewPath))
{
$paths = config('Paths');
$viewPath = $paths->viewDirectory;
}
return new CodeIgniterViewView($config, $viewPath, static::locator(), CI_DEBUG, static::logger());
}
我不清楚你的模块目录。假设您想保留一个可以在应用程序之间重复使用的简单常见问题解答模块。您可以创建名称为 faq 的文件夹,以在其中存储所有模块。您将把它放在主项目根目录中的应用程序目录旁边:
打开
**app/Config/Autoload.php**
并将 Faq 命名空间添加到psr4
数组属性:模块中的通用目录结构将模仿主应用程序文件夹:
看法: