Codeigniter 控制器构造函数中加载的模型无法由同一控制器的其他函数使用



我的模型:如下图所示,非常基本

class User extends CI_Model
{
    function __construct()
    {
        parent::__construct();
    }
    function getAll()
    {
        $this->db->order_by("lastName", "asc");
        $this->db->order_by("firstName", "asc");
        $this->db->order_by("userName", "asc");
        $query = $this->db->get('user');
        // test for result
        if($query->num_rows() > 0)
        {
            return $query->result();
        }
        return NULL;
    }
}

我的控制器:实际上是我的控制器的一部分,每次通过默认路由加载users/display函数时,错误(进一步向下)显示。在控制器的构造函数中加载的模型是否可用于同一控制器中的所有其他函数?

class Users extends CI_Controller
{
    function __contruct()
    {
        parent::__construct();
        $this->load->model('user');
    }
    function display()
    {
        $data['users'] = $this->user->getAll();
        $head['pageTitle'] = 'Users Panel';
        $this->load->view('security/redirect');
        $this->load->view('template/head', $head);
        $this->load->view('user/usersPanel', $data);
        $this->load->view('template/foot');
    }
}

我的错误:指的是行,"$data['users'] = $this->user->getAll()",在上面的控制器

A PHP Error was encountered
Severity: Notice
Message: Undefined property: Users::$user
我环境:

Codeigniter 2.1.0;
Mac Lion;
MAMP 2.0;

class Users extends CI_Controller
{
    function __contruct()
    {

像这样:

class Users extends CI_Controller
{
    function __construct()
    {

用construct代替construct

$data['users'] = $this->user->getAll();

是这样的:

$data['users'] = $this->user_model->getAll();

抱歉还有模型名:

$ this ->加载>模型("user_model");

和类名User_model扩展了CI_Model

我所有的CI项目都是这样设置的。

http://codeigniter.com/user_guide/general/models.html

最新更新