Я создал FormClass следующим образом:
/**
* {@inheritdoc}
*/
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
/*.some code.*/
->add('parent', EntityType::class, array(
'class' => Category::class,
'choice_label' => 'category_name'
))
/*.some code.*/
;
}
Это загрузит все категории в меню выбора.но я хочу показать детям всех родителей, как в виде дерева:
Root
- Category1
-- sub_category1
-- sub_category2
--- sub_category1_of_sub_category2
- Category2
-- sub_category3
Для этого мне нужна рекурсивная функция, которая обрабатывает ее.если EntityType имеет опцию, аналогичную query_builder
, которая дает мне весь результат опции class
, я могу решить мою проблему.
UPDATE 1 моей таблице нравится:
id | title | parent
1 Category1 Null
2 sub_category1 1
3 sub_category2 1
4 sub_category1_of_subcategory2 3
5 Category2 Null
6 sub_category3 5