Прадстаўленні ў MVC у PHP
Дадайм цяпер нашым дзеянням прадстаўленні.
Па правілах нашага фрэймворка прадстаўленні
захоўваюцца ў папцы /project/views/
.
Акрамя таго, у нашым фрэймворку дзейнічае
пагадненне: імя файла з прадстаўленнем павінна
супадаць з імем дзеяння і размяшчацца
ў папцы з такой самой назвай, як імя кантролера.
Напрыклад, калі ў нас ёсць кантролер PageController
,
то ўсе яго прадстаўленні слід захоўваць
ў папцы /project/views/page/
. Сам
файл прадстаўлення павінен мець пашырэнне
.php
. Дапусцім, калі ў кантролеры
PageController
будзе дзеянне act
,
то яго прадстаўленне слід размяшчаць у
/project/views/page/act.php
.
Для таго, каб задаць прадстаўленне якому-небудзь
дзеянню, гэта дзеянне павінна выклікаць метад
render
, перадаўшы яму параметрам імя
прадстаўлення. Імя прадстаўлення павінна складацца
з імя кантролера з маленькай літары, пасля
якой праз /
будзе запісана імя
дзеяння.
Метад render
не трэба рэалізоўваць
у кантролеры - ён наследуецца ад бацькоўскага
класа Core\Controller
. Акрамя таго,
для карэктнай работы вынік работы метаду
след вярнуць праз return
.
Такім чынам, хай у нас ёсць кантролер Page
з дзеяннем act
. Давайце прывяжам
да гэтага дзеяння прадстаўленне:
<?php
namespace Project\Controllers;
use Core\Controller;
class PageController extends Controller
{
public function act()
{
return $this->render('page/act');
}
}
?>
Зробім цяпер файл з HTML кодам нашага прадстаўлення:
<div>
гэта прадстаўленне
дзеяння act кантролера page
</div>
Прайдзіце апісаныя маніпуляцыі, а затым звярніцеся да нашага дзеяння праз адрасную радок. Пераканайцеся, што ў браўзэры з'явіцца тэкст з створанага вамі прадстаўлення.