У меня есть следующие ассоциации моделей:
Question belongsTo Category
Category hasMany Question
Question hasMany Answer
Answer belongsTo Question
Я хочу иметь возможность создавать новую категорию при создании Вопроса, но я получаю ошибку проверки Category.id
, хотя я не отправляю установку Category.id
в массиве $this->data
. Я успешно создаю новые ответы в той же форме, но категория не создается.
Моя форма:
<h3>Create multiple choice question</h3>
<?php
echo $this->Form->create('Question', array('action' => 'addmc'));
echo $this->Form->input('Question.name');
echo $this->Form->input('Question.questiontext', array('label' => 'Question Text (What students will see)'));
echo $this->Form->input('Question.generalfeedback', array('label' => 'General feedback (Feedback student will see when reviewing question)'));
for ($i = 0; $i < 4; $i++) {
echo $this->Form->input('Answer.'.$i.'.answer', array('label' => 'Answer ' . ($i+1)));
echo $this->Form->input('Answer.'.$i.'.score', array('label' => 'Score (Number from 0 to 100)'));
}
echo $this->Form->input('Category.0.name', array('label' => 'Category'));
echo $this->Form->button('Save question', array('class' => 'form'));
echo $this->Form->end();
?>
Я использую saveAll в контроллере. Я попытался удалить правило проверки для Category.id
. Операция сохранения прошла, но категория не была создана.