У меня есть несколько сущностей в SonataAdminBundle (Question, Article, News), к которым нужно прицеплять теги. Сделал с помощью Many-To-Many связей с Tag в каждой из нужных сущностей. Но для этого пришлось создать несколько промежуточных таблиц, что неудобно.
Нашёл бандл
FPNTagBundle, который позволяет задать промежуточную таблицу с доп.полем ResourceType. Это как раз то, что надо, я именно так сам и делал когда-то в другом проекте.
Но FPNTagBundle устанавливает связи через отдельный TagManager, и не работает в SonataAdmin.
Что подскажете? Как реализовывали подобные задачи?
Может, не париться, и оставить несколько промежуточных таблиц? Правда, у меня ещё будет пяток сущностей для тегирования... И боюсь, что поиск по тегам по всем тегированным сущностям будет делать непросто - нужно будет пробегать по нескольким таблицам связей.
Уже даже начал делать кастомный FormFieldType, но с ходу не осилил, как-то там всё запутано. Может, и сделаю. Если у кого есть опыт в создании создания своих обработчиков для полей в Sonata - дайте знать.