-
Notifications
You must be signed in to change notification settings - Fork 22
10 Rozloženie celej stránky
Samotný pohľad neobsahuje zdrojový kód celej HTML stránky, ale len jej časti. Chýbajú tam napr. elementy <html>
alebo <head>
. Je to preto, že väčšina
webových aplikácií má pevne definovaný dizajn (prípadne niekoľko dizajnov, napr. iný pre stránky dostupné bez prihlásenia a iný pre administrátorskú časť). Bolo
by preto zbytočné, aby sa v každom pohľade opakoval celý HTML kód stránky.
Rozloženie stránky (layout) sa nachádza v súbore s koncovkou .layout.view.php
v adresári App\Views
. Týchto súborov môže byť viac, preto v konfigurácii je
potrebné uviesť, ktoré rozloženia je základné a použije sa, ak pohľad nenastaví iné rozloženie. Konfiguračná konštanta ROOT_LAYOUT
v súbore
App\Config\Configuration.php
je štandardne nastavená na root
a preto framework používa rozloženie root.layout.view.php
. V tomto rozložení sa nachádza
aj sekcia <head>
, kde sa importuje Bootstrap CSS framework, alebo menu, ktoré je možné vidieť na úvodnej stránke frameworku.
Obsah pohľadu do rozloženia framework vkladá cez premennú $contentHTML
:
<div class="container-fluid mt-3">
<div class="web-content">
<?= $contentHTML ?>
</div>
</div>
Ak by pohľad vyžadoval použitie iného rozloženia, je možné ho špecifikovať priamo v príslušnom pohľade. Napr. stránky s prihlasovaním nepotrebujú, aby na nich
bolo aj menu, preto majú vlastné rozloženie definované v súbore auth.layout.view.php
. Pohľad preto zmenu rozloženia nastaví pomocou premennej $layout
v
súbore s daným pohľadom (pozri napr. pohľad login.view.php
v adresári App\Views\Auth\
).
<?php
$layout = 'auth';
?>
Pri odosielaní odpovede sa do rozloženia stránky vloží pohľad a celý kompletný súbor HTMl sa pošle používateľovi.