自定义类库载入问题 MY_Model extends CI_Model
本帖最后由 julia 于 2011-8-11 08:42 编辑如题,按照手册规则要求,没有查出原因???
//版本 2.0.2 (1.7.2下可以通过)
//错误提示
An Error Was Encountered
Unable to load the requested class: Model
//调用
$this->load->library('model');
//存放Location: application/library/MY_Model.php
class MY_Model extends CI_Model
{
function __construct()
{
parent::__construct() ;//parent::Model(); //CI_Model
}
。。。
} 本帖最后由 visvoy 于 2011-8-11 09:01 编辑
2.0以后要放在application/core/MY_Model.php 新建了个文件夹并将文件保存 application/core/MY_Model.php
//调用问题依旧
$this->load->library('model');
julia 发表于 2011-8-11 10:00 static/image/common/back.gif
新建了个文件夹并将文件保存 application/core/MY_Model.php
//调用问题依旧
core下面的,不用你自己初始化 //$this->load->library('model'); 处理成不初始化,但无法执行里面的的函数,如
$this->model->load_label();
错误提示
Message: Undefined property: file2::$model MY_Model是扩展CI_Model用的,不用加载,你随便哪个Data_model extends MY_Model
要加载的是->load->model('Data_model')不用加载MY_Model $this->load->library 你这句话是写那里的哦
感觉上你像是在Controller
调用你自己的 MY_Model 的方法 load_label
如果是在Controller
应该写成$this->load->model这个吧 本帖最后由 julia 于 2011-8-11 11:49 编辑
//在Controller调用某个自定义MY_Model 中函数l
$this->model->my_function();
//错误提示
Message: Undefined property: file2:model
//存放Location: application/corey/MY_Model.php
class MY_Model extends CI_Model
{
function __construct()
{
parent::__construct() ;//parent::Model(); //CI_Model
}
。。。
} julia 发表于 2011-8-11 11:46 static/image/common/back.gif
//在Controller调用某个函数
$this->model->my_function();
首先,MY_Model 并不是 Model,这个你要清楚。
其次,MY_Model 是“扩展核心类”的功能,也就是你如果想扩展系统原有 Model 类的功能才需要 MY_Model。
再次,MY_ 开头的都是特殊的类,不能 load
另外,你的需求是什么?
本帖最后由 kunwsk 于 2011-8-11 12:00 编辑
我提一个新问题呢
我新建了一个application/core/MY_Model.php 内容如下
class MY_Model extends CI_Model
{
public function __construct()
{
parent::__construct();
var_dump('Call Class MY_Model');
}
}
application/models/news_model .php
class News_model extends MY_Model
{
public function __construct()
{
parent::__construct();
}
}
我在Controller 层
class News extends CI_Controller
{
public function __construct()
{
parent::__construct();
$this->load->model('News_model');
}
public function index()
{
}
}
当我访问时候页面会出现两次被调用
string(19) "Call Class MY_Model" string(19) "Call Class MY_Model"
这个不知道是我写错了还是其他什么原因