akcje różnych kontrolerów w jednym widoku

Witam forumowiczów,

Mam pytanie, może ktoś się orientuje jak to zrobić.

Jak we widoku (np main.php) odwołać się do akcji, ale z dwóch różnych kontrolerów. tak by uzyskać efekt jak na obrazku. Jak to zrobić z jednego, to nie problem, wtedy bierzemy z $this->context i sprawa załatwiona - a jak to zrobić na różnych kontrolerach ?

Dzięki za pomoc i pozdrawiam

W main.php możesz załadować dowolne klasy typu widgets, extensions, controllers

Ale bardziej bym to nazwał po prostu klasa i metoda. Zależnie co mają robić te medoty czasami lepiej zastosować widzet, albo roższeżenie (extension)

Odwołąć się do tych dwóch klas


use app/widgets/Klasa2

?>

<div class="row">

	<div class="col-md-6"><?= app/controllers/klasa1::staticMethod() ?></div>

	<div class="col-md-6"><?= $klasa2 = new Klasa2() ?></div>

</div>

hmm… robię coś takiego, ale dostaję błąd




<?php


    $kontroler = new app\controllers\SiteController("kontroler", null);


    echo $kontroler->actionAbout();


?>



"Call to a member function getViewPath() on null"

Wiesz może jak odpalić kontroler poprawnie, prawdopodonie drugi argument (module, u mnie null) musi mieć jakąś wartość, ale jaką…?

Pozdrawiam

Kontrolery nie służą do generowania treści dla widoków, ale do obsługi żądań i przy jednym żądaniu tylko jeden kontroler może je obsługiwać. Prawdopodobnie nie zrozumiałeś idei MVC i źle zaprojektowałeś strukturę aplikacji - zamiast treści generowanych przez 2 kontrolery powinieneś korzystać z widgetów.

Proponuję poczytać o widgets


http://www.yiiframework.com/doc-2.0/guide-structure-widgets.html

Dzięki za link. Pozdrawiam