Codeigniter获取数据问题

时间:2019-02-01 07:09:47

标签: php codeigniter-3

从另一个模型获取数据时遇到问题。

假设我有主页,我想从具有两个不同表的数据库中获取数据。

这是我的观点:

<?php foreach ($items as $item): ?> 
<p><?php echo $item->image?></p>
<?php endforeach; ?>

<?php foreach ($items as $item): ?> 
<p><?php echo $item->about ?></p>
<?php endforeach; ?>

我的控制器:

<?php

class Home extends CIF_Controller {

    public $layout = 'full';
    public $module = 'home';
    public $model = 'Sliders_model';

    public function __construct() {
        parent::__construct();

        $this->load->model($this->model);
        $this->_primary_key = $this->{$this->model}->_primary_keys[0];
    }

    public function index() {
        $data['items'] = $this->{$this->model}->get();
        $this->load->view($this->module, $data);
    }


}

我的模特:

class Sliders_model extends CIF_model
{
    public $_table = 'sliders';
    public $_primary_keys = array('slider_id');
}

但是我遇到了错误:

  

遇到PHP错误

     

严重性:通知

     

消息:未定义的属性:stdClass :: $ about

     

文件名:default / home.php在此处输入代码

2 个答案:

答案 0 :(得分:0)

我认为您必须确保表中有名为“关于”的字段。

<?php foreach ($items as $item): ?> 
<p><?php echo $item->about ?></p>
<?php endforeach; ?>

答案 1 :(得分:0)

  

您应该在模型中输入get(数据库查询)功能。

class Sliders_model extends CIF_model
 {
   public $_table = 'sliders';
   public $_primary_keys = array('slider_id');

   public function get()
   {
     $query = $this->db->get($_table);
     return $query->result();
   }
}