Я пытаюсь использовать плагин Select2 jQuery с компонентом формы Symfony и Doctrine, чтобы создать поле тега, куда я могу добавлять существующие теги и создавать новые на лету.
Все идет нормально. Я использую следующий код инициализации Select2:
$('select.tags').select2({
tags: "true"
});
Все существующие теги загружаются при каждом запросе. Новые должны быть созданы/сохранены при отправке всей формы. (Так что никакой магии AJAX.)
Я не знаю, где я могу подключиться сейчас, чтобы добиться этого, чтобы несуществующие теги сохранялись в базе данных и добавлялись к моей родительской сущности.
Это должно произойти где-то между:
if ($form->isSubmitted()) {
}
и
if ($form->isValid()) {
}
в моем контроллере. Но я не могу представить, как лучше всего это сделать (или есть ли вообще).
Я читал о сборе форм, но почему-то это не совсем то, что мне нужно. Потому что там у вас есть одно единственное поле input
для каждого тега. Но у меня есть поле select
с динамически добавленными новыми параметрами.
FormEvents::PRE_SUBMIT
... поэтому я создал EventSubscriber и зарегистрировал его черезservices.yml
. Вызывается методgetSubscribedEvents()
. Но метод, зарегистрированный для события, не регистрируется. Работает ли регистрация подписчиков событий дляFormEvents
поверхservices.yml
? - person TiMESPLiNTER   schedule 04.12.2015