我无法从控制器加载模型
这是控制器文件,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)并且它调用了函数答案 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);
输入速度稍微快一点,并且可以减少样本中的拼写错误。