Haan napisał
Co robi ten kod?
To cos jak ViewBag, ktory wysyla dane do widoku, czy co?
Chodzi o to, że w wielu kontrolerach ktore widzialem, bylo robione cos takiego:
Kod :
<?php
class JakisController {
public function jakasAkcja(){
$model = $this->model->zdobadzJakiesDane();
$this->view = new View('jakisview');
$this->view->dana_numer_jeden = $model->costam;
$this->view->title = 'zajebisty tytulek';
$this->view->blablabla = 123;
return $this->view->render();
}
Ten kod ma trzy odpowiedzialności atm.
1) Wyciąga dane z modelu
2) Zarządza mapowaniem danych do widoku ( $this->view->costam [...] )
3) Wyrenderowanie widoku.
Osobiście wolę tą drugą odpowiedzialność wydzielić bezpośrednio do widoku ( np u mnie - ComposeView by to było ) , która z kolei jako zależność ma coś takiego co się nazywa ViewModel - ten view model jest odpowiedzialny właśnie za zwrócenie danych ( odp. 1 ) , co jest fajne, bo uzywając jednego interfejsu ViewModelu, można pod nim schować ( zmapować ) wiele innych, podobnych do siebie danych.
@Edit
A trzecią ( renderowanie ) wyjebac juz zupelnie z kontrolera.
Zakładki