Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Codeigniter:加载HMVC子模块模型时出错_Php_Codeigniter - Fatal编程技术网

Php Codeigniter:加载HMVC子模块模型时出错

Php Codeigniter:加载HMVC子模块模型时出错,php,codeigniter,Php,Codeigniter,我无法从子模块本身加载子模块控制器中的模型 我有以下几个模块和子模块 modules/admin/ modules/admin/models modules/admin/controllers modules/admin/views modules/admin/models/dashboard/ modules/admin/controllers/dashboard/ modules/admin/views/dashboard/ modules/admin/models/plugs/ mod

我无法从子模块本身加载子模块控制器中的模型

我有以下几个模块和子模块

modules/admin/
modules/admin/models
modules/admin/controllers
modules/admin/views

modules/admin/models/dashboard/
modules/admin/controllers/dashboard/
modules/admin/views/dashboard/

modules/admin/models/plugs/
modules/admin/controllers/plugs/
modules/admin/views/plugs/
每个M/V/C都有自己的文件

现在,我已经在modules/admin/models/plugs/中创建了一个模型,用于测试目的,如下所示

插头型号

<?php  if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Plugs extends CI_Model
{
    public function __construct()
    {
        parent::__construct();    

    }


    public function mymeta()
    {
        return 'plugs model loded';
    }

}

那么如何在控制器中加载模型呢?

您的模块不是
插头。它是
admin
,因为
modules/admin

您应该使用like
$this->load->model('module/model')

试试这个:

$this->load->model('admin/plugs/plugs'); // module/folder/file
重要的 控制器类名和模型类名冲突

只需将模型文件名重命名为:
plugs\u model.php

并将类名更改为:
class Plugs\u model extensed CI\u model

$this->load->model('admin/plugs/plugs_model'); 
echo $this->plugs_model->mymeta(); // plugs model loded

您是否尝试过
$this->load->model('admin/plugs')?是,给出相同的错误..:(你能告诉我文件路径在哪里吗?
modules/admin/models/plugs/plugs.php
?没错。它在同一路径上。
root/application/modules/admin/models/plugs/plugs.php
我的控制器在
root/application/modules/admin/controllers/plugs/plugs.php
@pixelngrain请检查我的答案,我已经尝试过了。)o但浏览器一直在搜索页面,从不加载。这太奇怪了。无法获取。出什么问题了?Udnerstand我已经将模型置于默认的
application/models/
结构中进行了交叉检查,它加载时没有任何问题。这意味着HMVCI有问题。我正在使用此ext,我的代码工作成功
plugs model lodded
我也在使用相同的,而不是为什么对我不起作用?:(非常关注..能否请您提供您的结构和文件,以便我与我的进行交叉检查。如果可能,您可以上传到bitbucket或github..我将不胜感激。
$this->load->model('admin/plugs/plugs'); // module/folder/file
$this->load->model('admin/plugs/plugs_model'); 
echo $this->plugs_model->mymeta(); // plugs model loded