Группа Symfony3 такой же формы

У меня проблема с группой такой же формы. В контроллере я создаю несколько таких форм

foreach($matchEntityList as $entityId => $entityItem) {
     $form[$entityId] = $this->createForm(MatchType::class, $matchEntityList[$entityId], [
         'matchId' => $entityId,
     ])->createView();
}

И в виду я отображаю каждую форму индивидуально. Когда я нажимаю кнопку «Отправить», я отправляю идентификатор формы во входных данных, скрытых для контроллера, и делаю запрос в этой форме.

$formId = $request->request->all()['match']['matchId'];
$form[$formId]->handleRequest($request);
if ($form[$formId]->isSubmitted() && $form[$formId]->isValid()) {
   $em->flush($matchEntityList[$formId]);
}

Все работает хорошо, но хотелось бы сделать шаг вперед. Мне нужна одна кнопка отправки, и когда я нажимаю на него, я хочу проверить все изменения и сбросить ее. У вас есть идея, как это сделать?

Вы имеете в виду одну кнопку отправки для отправки всех форм?

Dan Costinel 22.06.2018 08:33

Да, но было бы идеально проверять только те формы, которые были изменены, потому что это большая оптимизация. Я думаю о скрытом поле и javascript, а затем меняю значение этого поля, когда я что-то меняю, и делаю запрос только в этой форме. Но нужна только одна форма для отправки!

Kosi 22.06.2018 08:46

Используйте javascript (jquery) для выполнения таких задач. Не знаю, сработает ли скрытое поле. Что, если пользователь вводит некоторые данные в форме, которую он действительно хочет отправить, но по ошибке заполняет некоторые поля другой формы? В итоге вы получите две отправленные формы. Я бы попытался добавить обязательные поля для каждой формы, и если одно поле нежелательной формы заполнено, то не отправляйте никакую форму и отображайте сообщение для пользователя с запросом правильного действия.

Dan Costinel 22.06.2018 08:55

Хорошо, но эта оптимизация - второстепенная задача. Мне нужна одна форма с одной отправкой, где когда-либо поле будет иметь имя типа match [firstTeam] [0] вместо match [firstTeam]

Kosi 22.06.2018 09:19
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
4
31
0

Другие вопросы по теме