0
我想构建一个问卷形式。 当我使用下面的代码时,我只能看到包含18个问题(和答案字段)的表格的最后一个问题。如何在一个循环中添加一个重复表单symfony2为同一个实体
我不能使用集合,因为我的问卷会变得更加复杂,有些问题有多个答案,有些是真/假等问题。我简化了代码,首先解决了这个问题。
我想构建一个问卷形式。 当我使用下面的代码时,我只能看到包含18个问题(和答案字段)的表格的最后一个问题。如何在一个循环中添加一个重复表单symfony2为同一个实体
我不能使用集合,因为我的问卷会变得更加复杂,有些问题有多个答案,有些是真/假等问题。我简化了代码,首先解决了这个问题。
问题解决了,感谢一位朋友。 我必须更换createformBuilder
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()
));
$formBuilderQuestionnaire->add($formBuilder);
$i++;
}
//Create the form
$form = $formBuilderQuestionnaire->getForm();
return $form;
}
你的问题是什么? – cheesemacfly 2013-05-08 14:45:50
您正在循环的每次迭代中创建一个新的formbuilder ...?你应该这样做吗? – 2013-05-08 15:08:47
我的问题是:如何使(数据库的)所有问题出现在视图中?因为现在只有最后一个问题出现。 – Sandoche 2013-05-08 15:37:53