という名前のテーブルに新しいレコードを作成しようとしていますtutors
。CakePHPの規則に従うために、そのように名前を付けました。
$codigoAlumnoNuevo = $this->Persona->id;
$tipoPersona = $this->request->data('TipoPersona'); # Just grabbing a POSTED value.
switch ($tipoPersona) {
case '0': # Es Tutor
$this->Tutor->create();
$this->Tutor->PersonaId = $codigoAlumnoNuevo;
$this->Tutor->save();
die("Saved record");
break;
case '1': # Es Alumno
$this->Tutor->create();
$this->Tutor->PersonaId = $codigoAlumnoNuevo;
$this->Tutor->save();
die("Saved record");
break;
case '2': # Es Coordinador de Programa
$this->Tutor->create();
$this->Tutor->PersonaId = $codigoAlumnoNuevo;
$this->Tutor->save();
die("Saved record");
break;
default:
break;
}
このコードを実行しようとすると、次の例外が発生します。
非オブジェクトのメンバー関数create()の呼び出し
これを試してみると、それ$this->Tutor
がNULLであることがわかります。
var_dump($this->Tutor);
しかし、同じコントローラーで、問題なく呼び出すことができます$this->Persona->create();
。$this->Persona
nullではありません。どうしてこれなの?ペルソナは利用できるのにチューターは利用できないのはなぜですか?
ネーミングなの?
これが私のデータベースモデルです: