在开始学习 Codeigniter 并因此更好地处理 MVC 之后,我开始想知道一些事情。
假设有一个模型可以控制存储在数据库中的用户。通过在 Control 中验证的表单完成简单的注册,然后将数据传递到模型以存储在数据库中。现在,将发布的数据和设置传递给要存储的数据库的数组的过程在模型中组装,如下所示:
function add_user() {
$new_user_data = array(
'etunimi' => $this->input->post('etunimi'),
'sukunimi' => $this->input->post('sukunimi'),
'osoite' => $this->input->post('osoite'),
'postinro' => $this->input->post('postinro'),
'toimipaikka' => $this->input->post('toimipaikka'),
'puhelin' => $this->input->post('puhelin'),
'email' => $this->input->post('email'),
'tunnus' => $this->input->post('tunnus'),
'salasana' => $this->input->post('salasana')
);
$insert = $this->db->insert('kayttajat', $new_user_data);
return $insert;
}
我正在考虑的是将数据的组装转移到控制器中,从而使模型更加独立和可重用。因此,最终数据将作为方法参数传递:
function add_user ($new_user_data) {
$insert = $this->db->insert('kayttajat', $new_user_data);
return $insert;
}
据我了解,这将在层之间进行更多区分,因为模型除了检索和传递最终信息之外什么都不做,证明和组装的责任在控制器上,而视图只是将其全部打印出来并提供 UI。
我想要一些更有经验的意见,关于哪个概念更类似于 MVC 原则并且更有意义。