我有一个模型,它从我的数据库(有时来自一个或多个表)中获取复杂数据。它们都是关于一些 - 让我们说 - 一个学生。我应该有一个 Student 类,以便我在我的模型中创建它的一个实例,并填充它的属性并将其返回给控制器。
- 我可以这样做吗,这很奇怪吗?
我有一个模型,它从我的数据库(有时来自一个或多个表)中获取复杂数据。它们都是关于一些 - 让我们说 - 一个学生。我应该有一个 Student 类,以便我在我的模型中创建它的一个实例,并填充它的属性并将其返回给控制器。
这并不奇怪。在 MVC 世界中听起来很正常。如果第一个模型类似于 StudentRegister,那么它负责在给定标准的情况下查找学生。将检索到的数据本身建模为学生集合并返回给 StudentRegister 的客户端是合适的。所以,例如,你可以有
class StudenteRegister extends CI_Model {
public function __construct() {
parent::__construct();
$this->ci = & get_instance();
$this->ci->load->model('student');
}
public function findStudent($studentid)
{
$student = null; // will hold Student object once constructed
// some code to query database and construct Student object
return $student;
}