Pisząc własny framework natknąłem się na problem kontroli lewej i prawej części strony z panelu administracyjnego. Np. gdy wywołam kontroler usr wczyta on mi środkową część strony, za to menu już będzie inne i boxy po lewej i prawej stronie również będę inne, jak na stronie głównej, gdy wywołam kontroler domyślnie ustawiony.

Czytałem w sieci o wzorcach na ten problem, to co wyczytałem to Coposite View, View Helper i Intercepting Filter.


view helper - oddziela przetwarzanie biznesowe od formatowania widoów

composite view - organizuje kompozycję widoku złożonego z wielu podwidoków

intecepting filter - filtruje żądania przychodzące do aplikacji www


Domyślnie mam teraz klasę View, która renderuje tylko jeden widok, podany jako nazwa kontrolera i wrzuca również go do cache.

Teraz chciałbym stworzyć LAYOUT i wczytywać w klasie View setLayout(nazwa), czyli były to podwidok, w który wskoczą widoki-boxy, inaczej zagnieżdżą się.

Jak to wykonać, aby było konfigurowalne z bazy danych ?

  1. //Widoki mam jako DIV-y, czyli :
  2.  
  3. <div class="idLeftBoxUser"></div>
  4.  
  5. //I następnie w kontrolerze :
  6.  
  7. public function insertView( $div, $module){
  8. $modul = new $nazwaModulu();
  9.  
  10. // co tu ? Zamiana stringa nazwy diva ?
  11. }