Именно так я и делаю, вместо вызова контроллера в представлении ( ЧТО?!? ), я просто вычисляю все необходимые данные для представления в контроллере, который вызывает представление в первое место.
Представление никогда не должно вызывать контроллер / модель! НО, если вам необходимо, вы можете сделать что-то вроде этого:
function Controller($pathToControler) // instantiates and returns the Controller
function Model($pathToModel) // instantiates and returns the Model
Таким образом, внутри вашего взгляда вы можете сделать что-то вроде этого:
$this->Controller('path/to/blog/tags.php')->List();
Опять же, вы не должны использовать этот шаблон, я просто даю вам решения, а не поощряю их.
Аналогично, вы также можете вызвать другой вид изнутри вида, например:
$this->View('path/to/views/header.php', array('title' => 'Hello World!'));