无法在codeigniter中加载模型

时间:2011-07-02 05:23:44

标签: codeigniter model load

我无法从控制器加载模型

这是控制器文件,article.php:

<?php
class Article extends CI_Controller {
function show($id) { //id'ye gore getir
    $this->load->model('articles_model');
    $parameter = $this->articles_model>getarticle($id);
    $this->my_template->build('article_view', $parameter);


}
}
?>

这是模型文件articles_model.php:

<?php
class Articles_model extends CI_Model {


function __construct()
{
    // Call the Model constructor
    parent::__construct();
}

function Getarticle($id)  {
    parent::Model();
    $query = $this->db->get_where('articles', array('id' => $id));
    $data['articles'] = $query->result();
    return $data;
    $query->free_result();

}
}
?>

只是添加,我甚至试图从自动加载器加载它,仍然没有机会,我认为模型有问题,或整个系统坏了。

up:模型加载没有问题,如果我把回显放在__construct函数中,它可以工作,但是,我不能调用getarticle函数。吉兹

UP:我做到了!根据{{​​3}}

我用过     $ CI =&amp; get_instance(); 并调用该函数     $ CI-&gt; articles_model-&gt; getarticle($ id)并且它调用了函数

3 个答案:

答案 0 :(得分:3)

应该是,

  $CI =&get_instance();

 $CI->load->model('articles_model');
    $parameter = $CI->articles_model>getarticle($id);

答案 1 :(得分:1)

以下行中存在解析错误:

$parameter = $this->articles_model>getarticle($id);

应该是:

$parameter = $this->articles_model->getarticle($id);

这可以解决您的问题吗?如果没有,你看到了什么错误信息?

答案 2 :(得分:0)

Leif的答案是对的。只是添加一件事:您不必使用second parameter一遍又一遍地使用长$this->articles_model等变量名称:

$this->load->model('articles_model','artm');
$parameter = $this->artm->getarticle($id);

输入速度稍微快一点,并且可以减少样本中的拼写错误。