Итак, я ищу решение для следующей проблемы, которая была бы «лучшей практикой» для реализации в Symfony2.3.Настройка выбираемых параметров в формах
Краткое описание ситуации: У меня есть форма, определенная в его собственном классе («ProductType») Форма содержит поле, связанное с другой таблицей. Пользователь должен выбрать 1 значение из этого списка.
Я хочу ограничить значения, которые пользователь может выбрать. Не все параметры, найденные в базе данных, актуальны. Мне нужно динамически уменьшить параметры в списке на основе информации в базе данных и текущих значений, уже примененных к форме. Я могу сделать это, добавив «Подписка», в которой я изменяю содержимое формы. Но в этой подписке мне нужен доступ к базе данных/репозитарию Doctrine, чтобы определить список, который может выбрать пользователь.
Так что мне нужно ввести Doctrine в подписку, но она недоступна в классе Type.
Какое оптимальное решение для этого? - определить класс Subscription как услугу в Symfony и ввести Doctrine через этот маршрут? - что-то еще?
К сожалению, документация по Symfony не очень понятна.
Проблема заключалась в том, что мне нужно было использовать EntityRepository. Мне нужно было значение от объекта, для которого была создана форма для настройки результата этого запроса. В конце вам нужно переместить элемент формы в подписчик, чтобы вы получили доступ к значениям формы, а затем передали один (или более) из этих значений через закрытие EntityRepository. Сочетание этих 2 не было сразу очевидно для меня. Но сейчас он работает как шарм. – DoppyNL
http://symfony.com/doc/master/cookbook/form/dynamic_form_modification.html – DoppyNL