Intereting Posts
preg_match_all () – проблема с получением строки для соответствия в цикле foreach PHP – использование PDO с массивом предложений IN php: структура таблицы синтаксического анализа с помощью SimpleXML Существует ли определенная анти-XSS-библиотека для PHP? Безопасный способ остановить пользователей от формовки форм php получает уникальные значения многомерного массива Разделить большой файл txt с php Регулярные выражения: low-caps, точки, нулевые пробелы GoDaddy PHP и общие проблемы с загрузкой файлов Windows Server ZF 2: учебное приложение, «Конфигурация, объединяемая, должна быть массивом Автоматическое распознавание лиц с использованием API Picasa для извлечения отдельных изображений Не удается подключиться к базе данных (000webhost) Вызов функции множественных объектов PHP Как сделать активную панель навигации в php? codeIgniter pagination- не переходит к следующей ссылке результатов поиска

Сохранение данных в другую модель cakePHP 3.5

Я все еще новичок в cakephp. У меня есть вопрос таблицы и questionQuizzes. Я создал форму с именем existingQuestion в вопросе контроллера и хочу сохранить ее в таблице questionQuizzes. Однако форма не может быть сохранена. Я последовал этому примеру, но он по-прежнему не может быть сохранен.

Это QuestionController

public function existingQuestion() { //echo "here<br><br>"; //$QuestionQuizzesTable = $this->loadModel('QuestionQuizzes'); $questions = $this->paginate($this->Questions); $questionQuiz = $this->QuestionQuizzes->newEntity(); //print_r($this->request->getData()); //die(); if($this->request->is('post')) { $questionQuiz = $this->QuestionQuizzes->patchEntity($questionQuiz, $this->request->getData()); print_r($this->request->getData()); die(); if ($this->QuestionQuizzes->save($questionQuiz)) { $this->Flash->success(__('The question has been saved.')); return $this->redirect(['action' => 'existingQuestion']); } $this->Flash->error(__('The question could not be saved. Please, try again.')); } //$this->Questions->saveAll($this->request->getData()); $this->set(compact('questions')); $this->set('_serialize', ['questions']); } 

Может кто-нибудь мне помочь?!

Отредактировано: Я попытался отладить, и он показывает ошибку, подобную этой . И он показывает ошибку на линии отладки сам по себе.

Отредактировано 2: I print_r, и результат выглядит следующим образом . Ан, когда я пытался отлаживать, он выглядит следующим образом

Ваши данные неверны. Где ты нашел это? Он должен выглядеть так:

 [ 'questions' => [ '_ids' => [ 0 => 60, 1 => 61, ] ] ] 

Обратите внимание, что вопросы теперь имеют более низкий регистр и множественное число, а id заменяется на _ids. Подробнее см. Здесь .

Вы также захотите перенести это на контроллер patchEntity (как я предположил в прошлый раз ) и сделаем patchEntity на patchEntity викторины (через модель patchEntity ), потому что сейчас данные, которые у вас есть, бессмысленны: как он знает, какую викторину предполагается добавить эти вопросы?