我收到无法找到模型错误。
$this->load->model('1/Gift_model');
我的模型文件名是/models/1/中的gift_model.php 。
我通过以下方式声明模型。
class Gift_model extends CI_Model {
根据 CodeIgniter 的文档,我正在以正确的方式进行操作。有什么建议么?我有 5 个其他模型以完全相同的方式命名,并且它们都加载正常。
我收到无法找到模型错误。
$this->load->model('1/Gift_model');
我的模型文件名是/models/1/中的gift_model.php 。
我通过以下方式声明模型。
class Gift_model extends CI_Model {
根据 CodeIgniter 的文档,我正在以正确的方式进行操作。有什么建议么?我有 5 个其他模型以完全相同的方式命名,并且它们都加载正常。
My_model
my_model
$this->load->model('my_model');
$this->load->model('1/Gift_model');
应该是$this->load->model('1/gift_model');
。此加载参数和 php 文件名小写,文件中的类名大写(您有三个正确的两个)。
http://www.codeigniter.com/userguide3/installation/upgrade_300.html
从 CodeIgniter 3.0 开始,所有类文件名(库、驱动程序、控制器和模型)必须以类似 Ucfirst 的方式命名,或者换句话说 -它们必须以大写字母开头。
以前是小写开头的模型文件,后来改了。
确保模型名称是 Gift_model 并且类名称也是 Gift_model
class Gift_model extends CI_Model
{
}
但加载类是 '1/gift_model' 而不是 'Gift_model'
$this->load->model('1/gift_model');
希望这有帮助
您是否正在为模型调用父级的构造函数?
class Gift_model extends CI_Model {
function __construct()
{
parent::__construct();
}
问题是当您在 CodeIgnitergift_model.php
中加载时,您的文件名都是小写的 ( )。Gift_model
将文件名更改为Gift_model.php
或相应地更新您的代码。
-> Model Class name must be Uppercase
-> Model PHP file name must be Lowercase
-> Load Model using Lowercase(filename): $this->load->model('gift_model', TRUE);
从 CodeIgniter 3.0 开始,所有类文件名(库、驱动程序、控制器和模型)必须以类似 Ucfirst 的方式命名,或者换句话说 - 它们必须以大写字母开头。
(来源:CI 文档)
`如果使用codeignitor 3.1.3
,一切都一样,否则显示错误类名=> My_model
文件名 => My_model.php
加载模型 => $this->load->model('My_model');
调用函数 => $this->My_model->function();`