Blade – plik widoku
Jak działają pliki widoku w Laravel.
Mam nadziję, że przeczytałeś poprzedni wpis o kontrolerze stron, gdyż jest to ciąg dalszy. Jeśli nie to tu jest zawartość kontrolera, który nazywa się PagesController.php
[cc lang=”php”]
[/cc]
Teraz możemy przejść już do tematu wpisu. Framework używa plików widoku – Blade, które trzymage są pod taką ścieżką: resources/views/
Musimy pamiętać, że taki plik posiada dwa rozszerzenia nazwaPliku.blade.php. Właśnie ten zapis pozwala zdefiniowanej już metodzie view() odczytać konkretny plik widoku.
Skoro mamy już zdefiniowany plik routes/web.php
, gdzie jego zawartość wygląda tak:
[cc lang=”php”]
[/cc]
oraz kontroler (na samym początku strony), to jak sprawić aby łądował się plik widoku? Przejdźmy zatem do pliku PagesController.php app/Http/Controllers/PagesController.php
W miejsce linii 11, w której zwracamy mało istotny string wpiszmy:return view('pages.contact')
Co Nam to dało? Użyliśmy wbudowanej metody view(), która uruchamia widok z wprowadzonej do niej ścieżki. No ok, ale pewnie zastanawiasz się gdzie jest ta ścieżka? jest nic innego jak: pages.contact
Dobrą praktyką jest trzymanie wszystkich podstron w jednym katalogu. W naszym przypadku jest to włanie pages. Kropka pomiędzy pages.strong>contact jest to nic innego jak zamiennik backslash-a, a contact jak już pewnie się domyślasz jest to nazwa pliku z widokiem.
Używając metody view() nie trzeba używać rozszerzenia .blade.php
Skoro już wszystko mamy przygotowane teraz możemy się zająć samym widokiem. Jest on trzymany pod taką ścieżką:resources\views
Jednak pamiętajmy, to co napisałem wyżej – dobrą praktyką jest trzymanie podstron w osobnym katalogu i dlatego utwórzmy w nim katalog pages, a w nim plik contact.blade.php. Cała ścieżka powinna wyglądać tak:resources\views\pages\contact.blade.php
Wypełnijmy go dowolą ambitną treścią, np:
To jest strona kontaktowa :)