データベースから (1 つまたは複数のテーブルから) 複雑なデータを取得するモデルがあります。彼らはすべて、何人かの学生に関するものです。モデル内にそのインスタンスを作成し、そのプロパティを入力してコントローラーに返すように、Student クラスを用意しますか。
- 私はそれを行うことができます、それは変ですか?
データベースから (1 つまたは複数のテーブルから) 複雑なデータを取得するモデルがあります。彼らはすべて、何人かの学生に関するものです。モデル内にそのインスタンスを作成し、そのプロパティを入力してコントローラーに返すように、Student クラスを用意しますか。
変じゃない。MVC の世界ではごく普通に聞こえます。最初のモデルが StudentRegister のようなものである場合、いくつかの基準が与えられた Student の検索を担当します。取得したデータ自体を Student のコレクションとしてモデル化し、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;
}