Codeigniter 为什么我们要将我的_模型放在核心文件夹中?
在视频教程中,我可以看到Codeigniter 为什么我们要将我的_模型放在核心文件夹中?,codeigniter,Codeigniter,在视频教程中,我可以看到MY_Model.php被放置在CI应用程序的核心目录中,就像MY_Controller.php一样 我的问题是CI不从核心目录加载模型。我浏览了CI,发现CI只检查模型的application\models文件夹,而不是core文件夹(在CI 2.1.0 Loader.php文件的第279行找到)。这使得我无法直接使用$This->load->Model('MY_Model')访问我的_Model,尽管我可以很好地扩展它 这让我想知道为什么我们要把MY_Model.ph
MY_Model.php
被放置在CI应用程序的核心目录中,就像MY_Controller.php
一样
我的问题是CI不从核心目录加载模型。我浏览了CI,发现CI只检查模型的application\models
文件夹,而不是core
文件夹(在CI 2.1.0 Loader.php文件的第279行找到)。这使得我无法直接使用$This->load->Model('MY_Model')
访问我的_Model
,尽管我可以很好地扩展它
这让我想知道为什么我们要把
MY_Model.php
放在core
文件夹中。application\models
中的任何模型都可以直接扩展和访问,所以为什么不将MY\u model.php
放在那里?制作MY\u model.php
的原因是扩展了核心模型。它不应该使用this->load->model('myu model')
加载。它已经自动加载了。MY_model
的目的是为application/models
中的所有模型创建通用的方法和属性,而无需对核心文件进行黑客攻击。如果您有扩展的核心模型,那么您应该使用扩展的MY\u Model
来编写应用程序模型,而不是CI\u Model
您所说的“它已经自动加载”。我认为这是不对的。如果core\MY_Model.php
是自动加载的,那么我就不会让我的所有其他模型都扩展它,因为它的函数已经可用了。@typoknigi是指CI在该类中查找核心文件夹并自动包含,否则您将无法扩展我的_Model。