Я нашел это: «Как обрабатывать вложенный json с помощью форм FOSRestBundle и Symfony», но принятый ответ был: "создание несопоставленной формы и привязка данных вручную с помощью события формы"
В играть вы можете написать ваш собственный связыватель данных, но для большинства форматов (xml, json, ...) вы можете автоматически получать данные на основе HTTP-заголовка Content-Type (@BodyParser.Of(BodyParser.Json.class) не является обязательным здесь, чтобы заставить его работать), есть некоторые хорошо знать доступные связыватели данных (из Spring или где-то еще). У товара может быть список предметов, и даже так, вы можете автоматически привязать тело запроса к форме.
PHP / Symfony еще не узнали, как решить эту проблему? Если я создаю API REST в php + symfonmy, мне нужно написать какой-то «парсер» вроде это? Может ли кто-нибудь поделиться ссылкой на сообщение или примером с решением этой проблемы?
PD: Я использую игровой пример, потому что я не опытный веб-разработчик (меньше в PHP), так что воспринимайте это как мой mcve.
Заранее спасибо.






По моему опыту, этого можно добиться двумя способами:
В своих проектах я всегда использую второй метод, потому что очень легко обновлять сущности из сущности, загруженной в базу данных, и обрабатывать проверку ваших данных.
Я даю вам ссылку, которая есть в старой версии, но остается более или менее той же кнп университет
Я надеюсь это тебе поможет
Я полагаю, что это были связанные сущности, вы можете добиться этого с помощью типа коллекции, я могу сделать с такими формами, symfony.com/doc/current/reference/forms/types/collection.htm l
Чтобы решить эту проблему, убедитесь, что все поля в форме, которые имеют отношение, определены явно:
$builder->add('field_simple')
->add('field_entity')
...
Приведенный выше код не будет работать, потому что поле field_entity будет восприниматься как другое простое поле, вам нужно будет определить все поля сущностей или, по крайней мере, интересующие поля, например:
$builder->add('field_simple')
->add('field_entity', EntityType::class, array(
'class' => CustomEntity::class,
...
))
...
Наилучшие пожелания...
Я пробовал это, но не работает, когда у меня вложенный json :(.