ahkxhyl 发表于 2010-9-8 16:15:57

急!求助CI高手

function get_level_2($category){
                $sql = "select * from category where category=$category order by Id desc";
                $query = $this->db->query($sql);
                $rows = array();
      foreach ($query->result_array() as $row){
            $rows[] = $row;
      }
      return $rows;
        }
报错:Fatal error: Call to a member function result_array() on a non-object in D:\xxxxx\system\application\models\category_model.php on line 77,category_model.php的77行就是上面的那段代码

sonic 发表于 2010-9-8 16:27:45

你在控制器里这样
先新建一个模型的对象

$obj=new Obj_model();

然后用这个对象操纵这个里面的方法就行了
比如说可以导出数组的就用数组变量接受
$arr=$obj->get_level_2($category);

sonic 发表于 2010-9-8 16:28:45

模型层调用模型层的方法就是调用自己体内的方法
要用$this->method();

ahkxhyl 发表于 2010-9-8 16:36:18

回复 2# sonic


    我在控制器调用了啊

ahkxhyl 发表于 2010-9-8 16:36:58

$data['year_list'] = $this->category_model->get_level_2(8);

as3291363 发表于 2010-9-8 16:42:26

你是不是沒有加載模型呢???

sonic 发表于 2010-9-8 16:44:12

你在控制器里面调用也新建一个模型对象试试看

ahkxhyl 发表于 2010-9-8 16:45:10

在控制器里加载了
class Category extends Controller {

        function __construct(){
       
                parent::Controller();
               
                require_once('include.inc/application.php');
               
                //载入模型
                $this->load->model('category_model');
                $this->load->model('content_model');
               
        }

sonic 发表于 2010-9-8 16:45:20

在你用这个模型类的控制器类里面。
构造函数里面
写$this->load->model('model_name');

sonic 发表于 2010-9-8 16:47:11

那你的模型层怎么写的
页: [1] 2 3 4
查看完整版本: 急!求助CI高手