Mysql
 sql >> Datenbank >  >> RDS >> Mysql

kann nicht mehrere Tabellen in Cakephp speichern

$this->request->data['teacher']['user_id'] = $this->User->id;

sollte

sein

$this->request->data['Teacher']['user_id'] = $this->User->id; .

Großbuchstabe „T“. Modellnamen sind immer CamelCased.

Das heißt, es sind keine 2 Speichervorgänge erforderlich. Sie können einfach

verwenden

$this->User->saveAll($this->request->data); .

Es speichert sowohl den Benutzerdatensatz als auch den Lehrerdatensatz und fügt den richtigen Fremdschlüsselwert für den Lehrerdatensatz hinzu (vorausgesetzt, Sie haben die richtige Zuordnung zwischen Benutzer- und Lehrermodell eingerichtet).