Причина описана выше. Да никто не запрещает юзать render контроллера, как и юзать lazyLoad для вывода данных из связных таблиц. При малых обьемах данных разница будет минимальна, а вот при больших…
Когда вы дергаете контроллер из вьюхи то запускается весь kernel с его зависимостями и чем их больше, тем больше просядет производительность…
Symfony Book в свою очередь содержит информацию которая призвана популяризировать фреймворк, показать что не все так сложно, поэтому не всегда в нем описывают сложные подходы.
Ради интереса я когда то делал замер, данных для вывода было немного(облако тегов). С кастомной функцией гораздо быстрее рендерится страница.
Я в симфе не так давно но мне не понятен профит данного CommandBus. С таким же успехом я могу создать некий сервис(ProjectManager или ProjectHandler) и передавать сервису чистый request. Если нам не нужен твиговский рендер то содержимое контроллера можно вообще свести к 1й строчке, спрятав всю бизнес логику в сервисе.
Symfony Book в свою очередь содержит информацию которая призвана популяризировать фреймворк, показать что не все так сложно, поэтому не всегда в нем описывают сложные подходы.
Ради интереса я когда то делал замер, данных для вывода было немного(облако тегов). С кастомной функцией гораздо быстрее рендерится страница.
{{ render(controller('BloggerBlogBundle:Page:sidebar' ))}}
нужно бить по рукам.