Routing w laravel
Czym jest routing?
Routing, czyli po polsku ścieżki. Plik ten zawiera wszystkie możliwe ścieżki jakie będą dostępne w naszej aplikacji. Nie znaczyto, że będą one wyglądać:
/index.php
/kontakt.php
/faq.php
W zasadzie nic nie stoi na przeszkodzie, aby mniej więcej tak wyglądały, ale byłoby to trudne w utrzymaniu (nie licząc jeszcze żadań GET i POST).
Jak i gdzie wpisujemy ścieżkę.
Budowanie routing-u poprzez controller.
Gdy checmy oprzeć routing o kontroller na samym początku musimy go stworzyć. Można to zrobić na dwa sposoby:
-
Ręcznie:
Przechodzimy w strukturze katalogów kolejno
app/Http/Contollers/
i w tym miejscu tworzymy nowy plik o nazie controllera.
Jadnak to nie wszystko po jego stworzeniu otwieramy go i uzupełniamy o:
[cc lang=”php”][/cc]
Dopiero w lini 9 możemy pisać jego zawartość. - Automatycznie:
Oczywiśćie sposób automatyczny jest zdecydowanie prostrzy. Ogranicza się tylko do odpalenia consoli i wpisaniu poleceniaphp artisan make:controller NazwaControllera
Rozpoczynając pisać podstrony do Naszego kontrollera musimy pamiętać, że każda z nich musi być osobną metodą publiczną.
Tak jak zostało nadmienione to powyżej przykładowa podstrona może wyglądać tak:
[cc lang=”php”]
public function contact() {
return ‘To jest podstrona kontakt’
}
[/cc]
Utworzona powyżej podstreona nie jest powalająca – wyświetla ona tylko napis
“To jest podstrona kontakt”
ale to nie wszystko na tym etapie. Ten napis chcemy aby wyświetlił się po wpisaniu w pasku adresu: localhost:8000/contact
Zatem przejdźmy do pliku web.php, który znajduje się:routs/web.php
i dopiszmy jhak ma reagować aplikacja na wpisaniu tego co nas interesuje w pasku adresu, mianowicie:
[cc lang=”php”]
[/cc], gdzie w linii: 18 w pierwszym apostrofie wpisujemy na jaki adres ma reagować aplikacja czyli na: ‘/contact’. Następnie odwołujemy się do Napisanego przez Nas kontrolera i po @ wpisujemy nazwę metody publicznej, która wyświetli to co w niej wpisaliśmy definiując wcześniej kontroler.