我最近一直在从事一个项目,该项目是在另一位开发人员离开后交给我的(他是唯一一个在离开之前从事该项目的人)。该项目是用 CodeIgniter 编写的,并使用 MVC 框架。在做这个项目时,我发现了一些有趣的东西,或者至少是我以前从未见过的东西。模型加载到控制器后,对象被传递到视图中,使用...
$data['outcomes'] = $this->id_conversion;
id_conversion 是控制器顶部加载的模型。我的问题是这与使用有什么不同吗
new Id_conversion();
代替上述。
感谢您提供任何帮助或任何能够指出我正确方向的人。
编辑。抱歉,在阅读了评论后,我发现我需要更多的代码才能使其有意义。
public function person($id)
{
$this->authenticate->check_access(array('admin', 'rps'), 'home');
$this->load->library('page_uri');
$this->load->model('term');
$this->load->model('user');
$this->load->model('id_conversion');
$selected_term = $this->page_uri->get_term();
$current_term = $this->term->current_term_id();
if (!isset($selected_term)) {
$selected_term = $current_term;
}
$term = new Term();
if (!empty($selected_term) && $selected_term !== '0') {
$term = new Term($selected_term);
}
$user = new User($id);
$plans = $user->plans_by_term($term);
$data = array();
$data['user'] = $user;
$data['site_url'] = site_url("reports/person");
$data['current_term'] = $this->term->current_term_id();
$data['selected_term'] = $selected_term;
$data['terms'] = $this->term->sorted_term_list();
$data['term'] = $selected_term;
$data['plans'] = $plans;
$data['outcomes'] = $this->id_conversion;
$this->load->view('template/foundation', $data);
}
模型 id_conversion 加载
class Id_conversion extends MY_Model{
function __construct()
{
parent::__construct();
}
/*
* Input a primary or secondary outcome as defined
* in the plan class and
*/
public function id_outcomes($id)
{
$sql = 'SELECT name
FROM outcomes
WHERE id ='. $id;
$query = $this->db->query($sql);
return $query->row_array();
}
}