Не рекомендуется подключать контроллеры друг к другу, как это. Таким образом, ваше приложение будет очень привязано, и оно станет беспорядком.
Постарайтесь отделить вещи настолько, насколько сможете. Вы можете сделать это, например, поместив логику в модель, где контроллеры могут получить ее.
В идеальной ситуации ваш контроллер вообще не будет обрабатывать такое количество данных, но в основном будет пытаться моделировать ваши представления.
В настоящее время предпочтительным методом будет использование классов представлений, которые передают данные из ваших моделей в ваши представления. Таким образом, представление будет стоять в основном само по себе и иметь очень небольшое соединение с контроллером, что упрощает повторное использование ваших представлений.
Еще одна особенность Kohana-3, которая приходит в голову, - это использование класса Request для выполнения дополнительного внутреннего запроса, который позволит вам повторно использовать выходные данные контроллера в отсоединенном виде. 1011 *
Вы бы использовали это так:
$response = Request::factory('basket/show')->execute()->response
Где отклик - это обработанный вывод от выполненного запроса, который вы можете вывести в своем представлении. Этот метод подходит для корзины, которая отображается на каждой странице.