Задать вопрос

Как сделать дополнительные поля ввода на symfony?

Есть симфони 3, есть форма.
Есть одно input поле и кнопка для создания еще input-полей, которые должны быть с таким же именем, как у первого поля, чтобы в БД хранить в одной ячейке.
Есть ли правильный symfony-way для этого дела?
Это создание формы:
$form = $this->createFormBuilder($list)
            ->add('list_elements', TextType::class, array( 'allow_extra_fields' => true, 'attr' => array('class' => 'form-control', 'style' => 'margin-bottom:15px')))
            ->add('add_element', ButtonType::class, array('attr' => array('class' => 'form-control', 'onclick' => 'addInput(\'form\');' ,'style' => 'margin-bottom:15px')))
         ->add('save', SubmitType::class, array('label'=>'Create List','attr' => array('class' => 'btn btn-primary', 'style' => 'margin-bottom:15px')))
        ->getForm();

В твиге у меня ничего особенного:
{{form_start(form)}}
{{form_widget(form)}}
{{form_end(form)}}
+ js для создания инпут поля с таким же именем( это вот неправильный путь )
---
при сохранении выдает:
This form should not contain extra fields.
---
Вообще суть в том чтобы создать список ( до 10 элементов), с именем и сохранить.
  • Вопрос задан
  • 804 просмотра
Подписаться 1 Оценить 1 комментарий
Решения вопроса 1
slimus
@slimus
Symfony, Golang
Для построения формы (twig + формы) symfony.com/doc/current/cookbook/form/form_collect... +
Для трансформации данных в 1 поле: symfony.com/doc/current/cookbook/form/data_transfo...
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
e_svirsky
@e_svirsky
Web Developer
Не должны хранится в одной ячейке такие инпуты. Сделайте OneToMany отношение и с collection их прицепите в форме. Будут атомарными данные и всё как полагается :)
Ответ написан
Комментировать
VladimirAndreev
@VladimirAndreev
php web dev
м.б. list_elements[] прокатит?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы