我正在为我的应用程序使用 codeigniter,并使用 HMVC 方法在此处添加包进行开发:
https://bitbucket.org/wiredesignz/codeigniter-modular-extensions-hmvc
我有一个为我的视图创建的自定义模板,在我的内容视图中有以下几行:
if ((!isset($page_view)) || (is_null($page_view)) || (!file_exists(APPPATH . 'views/backend/' . $this->cms_template . '/cpanel/pages/' . $page_view . '.php')))
{
$this->load->view('backend/' . $this->cms_template . '/cpanel/template/page_unknown_view');
}
else
{
$this->load->view('backend/' . $this->cms_template . '/cpanel/pages/' . $page_view);
}
?>
这在文件夹中有视图时有效,但由于对于这种 HMVC 方法,我的一些视图将位于不同的文件夹中,因此它始终显示为我的未知页面文件。我应该如何修改以使其适用于这种方法。
编辑:让我试着改写所有这些。这是我的文件系统...
/application/views/backend/{templatename}/cpanel/index_view
/application/views/backend/{templatename}/cpanel/template/(header.php, footer.php, content.php)
/application/modules/users/controllers/users
/application/modules/users/views/users_view
假设用户控制器将 cpanel 视图加载为其加载三个模板页面的主视图页面。作为页眉、页脚和内容页面。在内容页面内部,它执行如上所示的 if 语句。它会发送一个变量,找出要加载的控制器特定视图。在这种情况下,我希望它加载 users_view 文件。因此,使用我的 if 语句,我需要它来确定它是否存在于该模块文件夹中的某个位置。
这有帮助吗?