Prezentácie v MVC v PHP
Pridajme teraz našim akciám prezentácie.
Podľa pravidiel nášho frameworku sa prezentácie
ukladajú v priečinku /project/views/.
Okrem toho v našom frameworku platí
dohoda: názov súboru s prezentáciou musí
súhlasiť s názvom akcie a musí byť umiestnený
v priečinku s rovnakým názvom ako je názov kontrolera.
Napríklad, ak máme kontroler PageController,
všetky jeho prezentácie by mali byť uložené
v priečinku /project/views/page/. Samotný
súbor prezentácie musí mať príponu
.php. Napríklad, ak v kontroleri
PageController bude akcia act,
jeho prezentácia by mala byť umiestnená v
/project/views/page/act.php.
Aby sme nastavili prezentáciu nejakej
akcii, táto akcia musí zavolať metódu
render, odovzdajúc jej parametrom názov
prezentácie. Názov prezentácie musí pozostávať
z názvu kontrolera s malým začiatočným písmenom, po
ktorom cez / bude zapísaný názov
akcie.
Metódu render netreba implementovať
v kontroleri - je dedená od rodičovskej
triedy Core\Controller. Okrem toho,
pre korektnú funkčnosť je výsledok práce metódy
potrebné vrátiť cez return.
Nech máme teda kontroler Page
s akciou act. Pripojme
k tejto akcii prezentáciu:
<?php
namespace Project\Controllers;
use Core\Controller;
class PageController extends Controller
{
public function act()
{
return $this->render('page/act');
}
}
?>
Vytvorme teraz súbor s HTML kódom našej prezentácie:
<div>
toto je prezentácia
akcie act kontrolera page
</div>
Vykonajte opísané manipulácie a potom pristúpte k našej akcii cez adresový riadok. Presvedčte sa, že v prehliadači sa objaví text z vytvorenej prezentácie.