Mam tabelę z kategoriami i tabelę categorysub połączoną relacją ToManyOne z tabelą kategorie
Zeby wyświetlić wszystkie kategorie wraz z podkategoriami używam widoków częściowych.
Np szablon z DsipalyCatAction
Kod
{% for category in categories%}
{{ link(category, path('category_show', {'id': category.id})) }}
{% include 'MyMoviesBundle:CategorySub:_list.html.twig' with {'categoriessub': category.categorysub} %}
<br />
{% endfor %}
{{ link(category, path('category_show', {'id': category.id})) }}
{% include 'MyMoviesBundle:CategorySub:_list.html.twig' with {'categoriessub': category.categorysub} %}
<br />
{% endfor %}
Pojawił się pewien problem, ponieważ nie każda kategoria ma pod kategorię i jak dla mnie jest kilka niepotrzebnych zapytań do bazy.
Napisałem sobie funkcje-Akcje która zwraca ID wszystkich kategorii, które mają podkategorie.
Jednak nie wiem jak mieć dostęp do wyniku tej akcji.
Oczywiście mogę użyc render, ale to tylko wyświetla, nadal w _list.twig.html nie mam dostępu do tej zmiennej
Wymyśliłem sobie tak
Kod
{% for category in categories%}
{{ link(category, path('category_show', {'id': category.id})) }}
{% if category.id in result %}
{% include 'MyMoviesBundle:CategorySub:_list.html.twig' with {'categoriessub': category.categorysub} %}
{% endif %}
<br />
{% endfor %}
{{ link(category, path('category_show', {'id': category.id})) }}
{% if category.id in result %}
{% include 'MyMoviesBundle:CategorySub:_list.html.twig' with {'categoriessub': category.categorysub} %}
{% endif %}
<br />
{% endfor %}
Jednak jak mieć dostęp do zmiennej result (wynik akcji, która zwraca mi ID kategorii, które mają podkategorie)?