Intereting Posts

Невозможно сохранить данные из одной таблицы в другую таблицу

В cakephp я не могу получить данные, возвращенные из 1 таблицы, для сохранения в другой таблице. У меня есть данные, предварительно заполненные в форме из таблицы Tutors, и все, что я хочу сделать, это сохранить эти данные как новую строку в table tutorEdit (не путать с функцией редактирования). Проблема, которую я получаю, заключается в том, что я получаю данные для сохранения, но tutorEdit не сохраняет ни одну из возвращаемых данных (без ошибок).

public function tutor_edit($id = null) { $this->loadModel('Tutor'); $this->Tutor->id = $id; debug($this->request->data ); if (!$this->Tutor->exists()) { throw new NotFoundException(__('Invalid tutor')); } if ($this->request->is('post') ) { if ($this->TutorEdit->save($this->request->data)) { $this->Session->setFlash(__('The tutor details to be edited have ben forwarded to management'), 'flash_success'); // $this->redirect(array('controller'=> 'tutors' , 'action' => 'tutordetails')); } else { $this->Session->setFlash(__('The tutor edit details could not be saved. Please, try again.'), 'flash_alert'); } } else { $this->request->data = $this->Tutor->read(null, $id); } ///// <?php echo $this->Form->create('Tutor',array('class' => 'form-horizontal')); echo $this->Form->input('id', $formHorizontalHtmlOptions); echo $this->Form->input('first_name', $formHorizontalHtmlOptions); echo $this->Form->input('last_name', $formHorizontalHtmlOptions); echo $this->Form->input('email', $formHorizontalHtmlOptions); echo $this->Form->input('mobile', $formHorizontalHtmlOptions); echo $this->Form->input('home_phone', $formHorizontalHtmlOptions); echo $this->Form->input('work_phone', $formHorizontalHtmlOptions); echo $this->Form->input('gender', array_merge($formHorizontalHtmlOptions, array('type' => 'select', 'options' => $gender))); echo $this->Form->end('Save Edit Request'); ?> 

ничего не видел об этом в http://book.cakephp.org/2.0/ru/models/saving-your-data.html

Solutions Collecting From Web of "Невозможно сохранить данные из одной таблицы в другую таблицу"

Поскольку данные, которые вы пытаетесь сохранить, являются «Tutor», а не «TutorEdit». В этой связи, которую вы разделили, в первом разделе показан правильный формат массива, который необходимо сохранить.

Попробуй это:

 if ($this->request->is('post') ) { $tutoredit = array('TutorEdit' => $this->request->data['Tutor']); if ($this->TutorEdit->save($tutoredit)) { $this->Session->setFlash(__('The tutor details to be edited have ben forwarded to management'), 'flash_success'); } else { $this->Session->setFlash(__('The tutor edit details could not be saved. Please, try again.'), 'flash_alert'); } }