symfony 2 でアンケートを管理しようとしていますが、コードは部分的に機能しています。このエラーが発生します
タイプ「ブール」、「文字列」の引数が必要です
コントローラーの私のコードは次のとおりです。
public function generateForm($questionnaire, $evaluation)
{
//Get question array collection
$questions = $questionnaire->getQuestions();
$formBuilderQuestionnaire = $this->createFormBuilder();
$i = 0;
//Make a loop for each question
foreach($questions as $question)
{
//Create an answer form
$answer = new Answers($question, $evaluation);
$formBuilder = $this->get('form.factory')->createNamedBuilder($i, 'form', $answer);
//Add a answer text box with the question as label
$formBuilder->add('answerText' , 'textarea', array(
'required' => false,
'label' => $question->getQuestionText()
));
if($question->getHasMultipleAnswers() == 1)
{
//Get subquestions
$subQuestions = $question->getSubQuestions();
//Initiate var j
$j = 0;
//Make a loop for each subanswers of a question
foreach($subQuestions as $subQuestion)
{
if($question->getMultipleAnswersAllowed() == 1)
{
//Create a subanswer entity for each subQuestion
$subAnswer = new subAnswers($subQuestion, $answer);
//Create a sub answer form
$formBuilder2 = $this->get('form.factory')->createNamedBuilder($j, 'form', $subAnswer);
$formBuilder2->add('value');
$j++;
}
else
{
//Get the different choices
$choices[$subQuestion->getId()] = $subQuestion->getSubQuestionsText();
}
}
if($question->getMultipleAnswersAllowed() == 0)
{
$formBuilder->add('AnswerChoice', 'choice', array(
'choices' => $choices,
'required' => true,
'expanded' => true
));
}
else
{
if(isset($formBuilder2))
{
$formBuilder->add($formBuilder2);
}
}
$choices = NULL;
}
$formBuilderQuestionnaire->add($formBuilder);
$i++;
}
//Create the form
$form = $formBuilderQuestionnaire->getForm();
return $form;
}
私のエンティティsubAnswers
には、ブール値として属性「値」があります。
それを削除するとエラーは消え$formBuilder->add($formBuilder2);
ますが、質問のチェックボックスを表示する必要があります。
この問題を解決するためのアイデアはありますか?