【问题标题】:cross module view file loading codeigniter跨模块视图文件加载codeigniter
【发布时间】:2013-04-17 08:48:08
【问题描述】:

我在 codeigniter hmvc 中有两个模块。

1- 访问 2- 显示

这是我的访问模块控制器

class Access extends MX_Controller
{

    public function __contstruct()
    {
        parent::__construct();
        $this->load->module('display');
    }
    public function index()
    {

        echo modules::run('display/login');
    }
    public function logout()
    {
        //$this->load->view('login');
        echo modules::run('display/test');
    }
}

这是我的显示模块控制器

class Display extends MX_Controller
{
    public function login()
    {
        $this->load->view('header');
        $this->load->view('login'); // This file resides in Access module view folder
        $this->load->view('footer');
    }
}

所以,当访问控制器接触时,从技术上讲,它应该访问控制器中的显示模块登录功能,作为回报应该显示登录表单以及页眉和页脚。

这里的问题是 login.php 被放置在从显示模块控制器访问的访问模块视图文件中。所以,我想每个人的问题都非常清楚。

【问题讨论】:

  • 我确实为这个 hmvc 事情找到了一个棘手的解决方案,例如我创建了与我在网站中使用的模块一样多的文件夹。这样,我的显示模块可以显示其他模块的所有视图。所以,FIXED。实际上问题是我希望我的模块在它们自己的文件夹层次结构中有单独的视图文件,我的显示模块在调用时无法显示。所以,尝试了周围的方法。

标签: codeigniter module hmvc


【解决方案1】:

加载视图时,您只需在视图名称前添加模块名称即可。所以 $this->load->view('login');会变成 $this->load->view('access/login');

应该可以的。

【讨论】:

    猜你喜欢
    • 2014-02-18
    • 2014-03-25
    • 2013-08-31
    • 2021-04-05
    • 2022-12-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多