为啥不断在 codeigniter 上获得未定义的属性?

Posted

技术标签:

【中文标题】为啥不断在 codeigniter 上获得未定义的属性?【英文标题】:Why keep getting an Undefined property on codeigniter?为什么不断在 codeigniter 上获得未定义的属性? 【发布时间】:2016-12-25 17:49:24 【问题描述】:

我正在尝试将模型加载到库中。

这就是我加载它的方式,

class Init
 private $CI;

    function __construct()
    
        $this->CI = &get_instance();
        $this->CI->load->model("backend/StoreSettings_Model");
    

当我尝试访问 storesettings_model 中的方法时,我收到以下错误Undefined property: Init::$Storesettings_Model

 public function settingsSetUp($store_name)

      $settings =   $this->CI->storesettings_model->getStoreSettings($store_name);


我已经尝试更改大小写以匹配我正在加载到 StoreSettings_Model 的类的大小写...仍然是同样的问题

如果我加载所有小写的库,那么它会工作,但是当我上传到我在 Linux 上运行的开发服务器时,它会抛出一个错误,因为类名是 StoreSettings_Model 并且我用 @ 进行实例化987654326@

以前有人遇到过这个问题吗?如果是这样,您对修复它有什么建议?

任何帮助将不胜感激。

【问题讨论】:

您将模型命名为错误,而不是 StoreSettings_Model 尝试使用 Storesettings_model.php 作为文件名,class Storesettings_model extends CI_Model 只有第一个字母应该是大写。 $this->CI->load->model('backend/storesettings_model') 在这里$this->CI = &get_instance(); 你在= & 右侧有一个空格试试$this->CI =&get_instance(); ***.com/questions/4740430/explain-ci-get-instance 【参考方案1】:

试试这个

function __construct()

    #  $this->CI = &get_instance(); < ---- remove this 
    $this->load->model("backend/StoreSettings_Model"); # remove CI-> 

在方法中

 public function settingsSetUp($store_name)

      $settings =   $this->storesettings_model->getStoreSettings($store_name);  # remove CI-> on here too


【讨论】:

以上是关于为啥不断在 codeigniter 上获得未定义的属性?的主要内容,如果未能解决你的问题,请参考以下文章

为啥我在地图箭头功能中不断收到未定义的错误?

CodeIgniter 404 页面未找到,但为啥?

即使未加载 codeigniter 会话库,也会在数据库中创建新的会话条目。为啥?

为啥在输入地址上使用 getPlace() 时谷歌自动完成返回未定义

为啥我在我的 Django 项目中不断收到此“名称‘模型’未定义”错误?

我的 React 应用程序代码不断给出错误“无法读取未定义的属性 'fname'”,我不明白为啥