Для меня я зависит от того, сколько «кода» необходимо в каждой итерации.
Для простых деревьев я бы просто объявил функцию в верхней части файла представления. (Поскольку я думаю, что эта функция имеет только реальное значение в этом отдельном файле).
Для деревьев с немного большим рендерингом я бы создал отдельный частичный файл. Этот файл может быть вызван в файле представления и в самом частичном файле.
Вы также можете создать вспомогательный файл, который вы используете на этой конкретной странице, и поместить его, чем частичный, будет более понятным и проще в реализации (и вы можете использовать все другие вспомогательные функции и функции Symfony)