Blade – plik widoku

https://laravel.com/

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.phpW 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\viewsJednak 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 :)

Podsumowanie

  1. Utworzyliśmy plik routingu (routes/web.php), w którym zdefiniowaliśmy scieżkę na jaką ma reagować nasza aplikacja z wykorzystaniem kontrolera.
  2. Utworzyliśmy sam kontroler (app/Http/Controllers/PagesController.php), który obsługuje podstronę i uruchamia metodę łądującą widok – view(‘pages.contact’);
  3. Na sam koniec utorzyliśmy plik (resources/views/pages/contact.blade.php), który wczytuje wygląd strony.