Symfony 4 - группировка категорий

У меня есть таблица для категорий и parent_category с ralation ManyToOne. Это моя таблица категорий: Symfony 4 - группировка категорий

А это моя таблица parent_category:

Symfony 4 - группировка категорий

Это мой код в FormType:

->add('category',EntityType::class,array(
                'class'=>Category::class,
                'choice_label'=>'name',
                'group_by'=>'parent_id'

            ))

И это ответ в браузере.

Symfony 4 - группировка категорий

Моя родительская категория должна быть для 1-Якета (Куртки), 2-Блузи (Блузки), 3-> Панталони (Штаны). Мне нужно строковое значение этого parent_id, например:

Якета
--Пролетни
--Зимни
--Жилетки
Блузи
--Тениски
--Ризи
--Дълъг ръкав
Панталони
--Къси
--Дълги
--Дънки

Как это сделать? Спасибо!

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Symfony Station Communiqué - 17 февраля 2023 г
Symfony Station Communiqué - 17 февраля 2023 г
Это коммюнике первоначально появилось на Symfony Station , вашем источнике передовых новостей Symfony, PHP и кибербезопасности.
Управление ответами api для исключений на Symfony с помощью KernelEvents
Управление ответами api для исключений на Symfony с помощью KernelEvents
Много раз при создании api нам нужно возвращать клиентам разные ответы в зависимости от возникшего исключения.
2
0
183
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Может быть, вы можете попробовать это:

'group_by' => function($value, $key, $index) {
       return $value->getParent()->getName();
    }

Как правильно решить мою проблему? Спасибо

Борислав Якимов 10.05.2018 15:08

если у вашего объекта Category есть метод getParent (), который возвращает объект ParentCategory, а у объекта ParentCategory есть метод getName (), тогда он должен работать.

Andrew Vakhniuk 10.05.2018 15:30

Спасибо, я сделал запрос, и теперь все в порядке!

Борислав Якимов 10.05.2018 17:04

Почему вы создали этот метод в своем CategoryRepository? Вам это не нужно для группировки. Метод getParent () должен находиться в вашем классе Entity, а не в репозитории.

Andrew Vakhniuk 10.05.2018 19:35

Да, моя ошибка.

Борислав Якимов 11.05.2018 10:23

(Размещено решение от имени автора вопроса).

Новый обновленный код в FormType:

'group_by' => function(Category $category) {
                    return $category->getParent()->getName();

                }

Другие вопросы по теме