В symfony есть menubar, который загружается на каждый сайт моего проекта.Обычно я загружаю данные следующим образом:
/**
* @Route("", name="main")
*
*
*/
public function main()
{
$category_rep = $_om->getRepository(Category::class);
$this->categories = $category_rep->findAll();
....
}
Это нормально, но я ищу лучшее решение для загрузки данных на весь контроллер или проект.Я нашел решение для автозагрузки данных по:
@Entity("category", expr="repository.find($id)")
public function index(Category $category)
, но он может дать мне только один результат из категории Entity (в меню я хочу показать все категории в репозитории).Вторая идея заключалась в том, чтобы сделать конструктор в контроллере, который загружает эти данные следующим образом:
private $categories;
public function __construct(ObjectManager $_om)
{
$category_rep = $_om->getRepository(Category::class);
$this->categories = $category_rep->findAll();
}
или создать службу, которая будет загружать эти данные и запускать эту службу в каждом методе.Я хочу спросить, какая из этих идей является лучшим («самым чистым») решением.Может быть, это еще лучший вариант ??
Спасибо за помощь, Крис