3

我收到无法找到模型错误。

$this->load->model('1/Gift_model');

我的模型文件名是/models/1/中的gift_model.php 。

我通过以下方式声明模型。

class Gift_model extends CI_Model {

根据 CodeIgniter 的文档,我正在以正确的方式进行操作。有什么建议么?我有 5 个其他模型以完全相同的方式命名,并且它们都加载正常。

4

9 回答 9

13
  1. 将模型类名设为大写 My_model
  2. 使模型 php 文件名小写 my_model
  3. 使用小写(文件名)加载模型$this->load->model('my_model');
于 2014-03-25T12:13:40.593 回答
3

$this->load->model('1/Gift_model');应该是$this->load->model('1/gift_model');。此加载参数和 php 文件名小写,文件中的类名大写(您有三个正确的两个)。

于 2013-09-18T22:48:28.980 回答
2

http://www.codeigniter.com/userguide3/installation/upgrade_300.html

从 CodeIgniter 3.0 开始,所有类文件名(库、驱动程序、控制器和模型)必须以类似 Ucfirst 的方式命名,或者换句话说 -它们必须以大写字母开头

以前是小写开头的模型文件,后来改了。

于 2015-04-13T01:30:42.713 回答
2

确保模型名称是 Gift_model 并且类名称也是 Gift_model

class Gift_model extends CI_Model
{

}

但加载类是 '1/gift_model' 而不是 'Gift_model'

$this->load->model('1/gift_model');

希望这有帮助

于 2016-01-29T15:40:44.223 回答
0

您是否正在为模型调用父级的构造函数?

class Gift_model extends CI_Model {
    function __construct()
    {
        parent::__construct();
    }
于 2013-09-18T22:40:54.277 回答
0

问题是当您在 CodeIgnitergift_model.php中加载时,您的文件名都是小写的 ( )。Gift_model将文件名更改为Gift_model.php或相应地更新您的代码。

于 2013-09-18T21:09:47.717 回答
0
-> Model Class name must be Uppercase
-> Model PHP file name must be Lowercase
-> Load Model using Lowercase(filename): $this->load->model('gift_model', TRUE);
于 2014-08-22T07:55:49.557 回答
0

从 CodeIgniter 3.0 开始,所有类文件名(库、驱动程序、控制器和模型)必须以类似 Ucfirst 的方式命名,或者换句话说 - 它们必须以大写字母开头。

来源:CI 文档

于 2017-05-06T09:41:51.930 回答
-1

`如果使用codeignitor 3.1.3
,一切都一样,否则显示错误类名=> My_model

文件名 => My_model.php

加载模型 => $this->load->model('My_model');

调用函数 => $this->My_model->function();`

于 2017-03-17T14:23:04.417 回答