Многие ко многим Самостоятельные ссылки Поиск - PullRequest
1 голос
/ 16 марта 2019

У меня есть сущность " Многие ко многим, ссылающиеся на себя ", и мне нужно выполнить поиск для элементов родители являются дети ,Например,

{
    "id": 58,
    "name": "DVD & Home Theater",
    "parent": {
        "id": 5,
        "name": "TV & Video",
        "parent": null
    }
}

искать " Home Tv ", где часть текста находится в родительском элементе.Я мог бы добавить дополнительный столбец, и при сохранении сущности объединить имя родительского элемента в дочернем элементе " ТВ и видео> DVD и домашний кинотеатр " будет использовать этот столбец для поиска

.также хотел бы возвращать элемент только в том случае, если имя родительского элемента будет вставлено в дочерний элемент

{
    "id": 58,
    "name": "TV & Video > DVD & Home Theater"
}

. Это предположение, которое мне удалось решить с помощью следующей записи

/**
* @JMS\PreSerialize
* @return mixed
*/
public function getParent()
{
    $parent = $this->parent;
    if ($parent) {
        $this->name = $this->parent->getName() . ' > ' . $this->name;
    }
    return $parent;
}

Я хотел бы иметь что-то вроде этого конечного результата, как этот

[
    {
        "id": 5,
        "name": "TV e Vídeo"
    }, {
        "id": 59,
        "name": "TV e Vídeo > TV Led"
    }, {
        "id": 82,
        "name": "TV e Vídeo > Antenas"
    }, {
        "id": 58,
        "name": "TV e Vídeo > DVD e Home Theater"
    }
]

...