簡體   English   中英

PHP Codeigniter-控制器上的未定義屬性

[英]PHP Codeigniter - Undefined property on controller

我是Codeigniter的新手,我使用的版本是最新的Codeigniter v2.1.4

我正在做一些簡單的CRUD作為創建自己的Web博客的開始,但是它在我的控制器上收到如下錯誤消息。

消息:未定義的屬性:Site :: $ site_model

控制者

function blog() {
        $data = array();
        $query = $this->site_model->get_records();

        if (isset($query)) {
            $data['records'] = $query;
        }

        $data['main_content'] = 'blog';
        $this->load->view('includes/template', $data);
    }

它在這條線上抱怨$query = $this->site_model->get_records();

模型

function get_records() {
        $query = $this->db->get('data');
        return $query->result();
    }

數據庫庫也被加載。

$autoload['libraries'] = array('database');

我究竟做錯了什么?

在此之前,您需要像這樣load the model

$data = array();
$this->load->model('site_model');   //Here
$query = $this->site_model->get_records();

無論何時使用模型函數,都要確保在此之前還需要加載模型。

正如Hashem Qolami所說,您可以像這樣自動加載模型

$autoload['model'] = array('model1', 'model2'); 

但是我認為所有模型的自動加載都可能會造成一些性能問題(我不確定),但是您可以這樣做。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM