CodeIgniter,将数据从模型传递到控制器以在视图中使用 [英] CodeIgniter, pass data from model to controller to use in view
本文介绍了CodeIgniter,将数据从模型传递到控制器以在视图中使用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想将在模型中查询的数据传递给控制器,为此,我正在使用return $ data。然后在控制器中使用 $ this-> load-> view('my_view',$ data);
I want to pass data queried in my model to the controller, to do so I am using return $data. Then in the controller I use $this->load->view('my_view', $data);
视图中的 var_dump($ data);
应该向我显示查询的结果...事实并非如此。我从 var_dump($ data);
中获取未定义的变量数据和NULL。
From my understanding var_dump($data);
in the view should show me the results from the query... This is not the case. I am getting "undefined variable data" and NULL from the var_dump($data);
.
这是我的模型:
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Manage_accounts_model extends CI_Model {
public function index() {
//
}
public function get_users(){
$data = array();
$data['query'] = $this->db->get('users');
return $data['query'];
}
}
这是我的控制器
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Manage_accounts extends CI_Controller {
public function index() {
$this->load->view('template/header');
$this->load->model('manage_accounts_model');
$this->load->view('template/footer');
$this->load->model('manage_accounts_model');
$res = $this->manage_accounts_model->get_users();
if($res){
$this->load->view('manage_accounts_view', $data);
} else {
echo "Fail";
}
}
}
最后我的观点:
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
?>
<div class="container">
<h1><?php if($title){ echo $title; } ?></h1>
<?php var_dump($data['query']); ?>
</div>
推荐答案
我认为您犯了2个错误
- 忘记将结果提取到数组
- 忘记将数据传递给视图
更改模型类。
public function get_users(){
$data = array();
$query = $this->db->get('users');
$res = $query->result();
return $res;
}
更改控制器类
public function index() {
$this->load->view('template/header');
$this->load->model('manage_accounts_model');
$this->load->view('template/footer');
$this->load->model('manage_accounts_model');
$res = $this->manage_accounts_model->get_users();
if($res){
$data['result'] = $res;
$this->load->view('manage_accounts_view', $data);
} else {
echo "Fail";
}
您认为
print_r($result);
这篇关于CodeIgniter,将数据从模型传递到控制器以在视图中使用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文