将数据从模型传递到控制器的正确方法

时间:2012-04-22 23:51:32

标签: codeigniter object

我有一个从我的数据库中获取复杂数据的模型(有时从一个或多个表中获取)。他们都是关于某些学生说的。我应该有一个Student类,以便在我的模型中创建它的实例,并填充其属性并将其返回给控制器。

  • 我可以这样做,这有点奇怪吗?

1 个答案:

答案 0 :(得分:0)

这并不奇怪。在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;
}