Techniki Pracy
8 godz. 33 min · Laravel · Full-stack i Programowanie
Piotr PalarzWeb DeveloperKurs ten rozpoczniemy od omówienia czym jest framework Laravel i co może Ci zaoferować. Następnie zobaczysz jak skonfigurować środowisko do pracy lokalnej w formie wirtualnej maszyny z preinstalowanymi narzędziami, tj. PHP, MySQL czy serwerem nginx. Zobaczysz w jaki sposób tworzyć nowe projekty wykorzystujące Laravel, zrozumiesz strukturę katalogów projektu i skonfigurujesz polaczenie z baza danych.
W kursie nie znajdziesz czysto teoretycznych lekcji. Każda z części przybliżać nas bowiem będzie do finalnej wersji projektu, którym będzie aplikacja internetowego bloga. Funkcjonalności, które od podstaw zaimplementujemy, to m.in. dodawanie i wyświetlanie wpisów, tworzenie i przypisywanie tagów, komentowanie, rejestracja i logowanie użytkowników czy wyszukiwarka. Każda z nich odkryje przez Toba możliwości frameworka Laravel i jego sposoby na rozwiazywanie konkretnych problemów.
Laravel to framework oparty o wzorzec MVC. Na konkretnych przykładach zobaczysz co to oznacza. Tworzyć będziemy wspólnie kontrolery, do których przypiszemy stosowne adresy URL, modele, które reprezentować będą dane, a także widoki, które te dane sformatują, wplatając je w kod HTML.
Choć aby w pełni zrozumieć omawiane zagadnienia, należy znać podstawowe koncepcje relacyjnych baz danych, to pisanie zapytań SQL nie jest czymś, to będziemy musieli robić. Wszystko to za sprawa migracji oraz Eloquenta. Te pierwsze pozwolą nam zaprojektować strukturę tabel bazy danych i jedna komenda je utworzyć, a Eloquent posłuży nam do tworzenia, zapisywania i odczytywania modeli reprezentujących te dane. Wszystko to uzyskamy pisząc wyłącznie prosty kod PHP.W kursie nie zabraknie również informacji na temat tworzenia relacji. Zobaczysz m. in. jak skojarzyć autora w wpisem, jak dodawać tagi czy komentarze.
Te dwa pojęcia, choć podobne, różnią się od siebie. Pierwsze pozwala określić, czy logujący się użytkownik jest tym, za kogo się podaje. Drugie mówi nam, czy dana osoba może wykonać zadana akcje. Oba te koncepty zobaczysz w akcji na praktycznym przykładzie. Do naszego bloga dodamy pełen system autentykacji, tj. rejestracje, logowanie, resetowanie hasła i potwierdzanie adresu email. Zalogowani użytkownicy otrzymają dzięki temu bonus w postaci niewidocznych dla pozostałych osób wpisów premium. Aby zarządzać wpisami na blogu, stworzymy mini sekcje administracyjna, do której dostęp będzie miał wyłącznie użytkownik oznaczony jako administrator. Dowiesz się wówczas nie tylko jak pokazywać pewne widoki wyłącznie zautoryzowanym osobom, ale także jak zabezpieczyć kontrolery przed nieuprawnionym dostępem.
Oprócz wymienionych wyżej tematów, w kursie poruszymy również uploadowanie plików na serwer, sposoby tworzenia i wysyłania maili, prace z Front-endem, debugowanie aplikacji, korzystanie z rozszerzeń tworzonych przez aktywna społeczność Laravel czy techniki wdrażania aplikacji do produkcji. Ostatni temat będzie o tyle ciekawy, ze jest on często pomijany w materiałach tego typu. Z tym kursem Twoja aplikacja nie pozostanie wyłącznie na dysku Twojego komputera. Dowiesz się bowiem jak skonfigurować serwer VPS tak, aby wykorzystać tzw. zero-downtime deployment. Dwie komendy wystarcza wówczas do tego, aby w kilkanaście sekund nowa wersja Twojej aplikacji ukazała się światu. A wszystko to bez przerywania jej działania nawet na ułamek sekundy i bez wykorzystania płatnych rozwiązań!
Kurs ten jest dla wszystkich tych, którzy znają już podstawy języka PHP i koncepcje relacyjnych baz danych SQL oraz chcieliby przyjemnie i wydajnie tworzyć ambitne aplikacje internetowe. Znajomość samego frameworka Laravel lub podobnych rozwiązań nie jest jednak wymagana. Praca z frameworkiem omawiana jest stopniowo, od podstaw do bardziej zaawansowanych tematów. Jeśli zatem masz głowę pełną pomysłów, a chcesz uniknąć frustracji związanej z pisaniem wszystkiego od podstaw - koniecznie sięgnij po Laravel i zobacz jak to narzędzie pozwoli skupić Ci się na tym, co istotne!
5.8.x
W tej lekcji zajmiemy się wyświetlaniem odpowiednich linków czyli będę chciał w
naszym koncie tak wszystko podlinkować żeby można było dobrze już nawigować po naszej stronie, przynajmniej
po tych podstronach które mamy przy okazji zobaczysz jak w blade można wykorzystywać
wyrażenia, czyli do tej pory widziałeś takie jakby dyrektywy gdzie mamy
małpkę na początku. Podobnie będzie na przykład z if, if else for each
co będziemy robić później. Natomiast jeżeli chcemy coś mówiąc brzydko wypluć
tutaj w tym kodzie czyli tak normalnie w php robi się za pomocą polecenia echo
to możemy to zrobić za pomocą takich nawiasów klamrowych
i Może zaczniemy od tego że mamy tutaj na logo link do naszej głównej
strony i chciałbym go podlinkować. Nic nie stoi na przeszkodzie żeby tutaj wstawić po prostu
slasha i wszystko będzie okej natomiast jeżeli chcielibyśmy tutaj wstawić
cały adres czyli naszą domenę, to możemy skorzystać z funkcji pomocniczej i
teraz jeżeli zrobimy sobie taki zapis to w blade oznacza
to tyle co w php po prostu echo czyli to co tutaj wstawimy, zostanie w
tym miejscu podstawione i w dowolnym miejscu w tym pliku możesz z tego korzystać, nie tylko w atrybutach,
zupełnie w dowolnym i teraz co tutaj będziemy chcieli zrobić.
Otóż laravel daje nam taką funkcję pomocniczą jak url i możemy
w tej funkcji przekazać do czego ten url chcemy tutaj
wyrzucić, czyli jeżeli url i slash to zostanie tutaj zwrócony
pełny adres URL do naszej strony głównej. Zobaczmy
po odświeżeniu co tutaj jest i jeżeli sobie podejrzymy w tym
widoku, zobacz jest to pełny adres, jak widzisz http larabloger.test i
chciałbym to zostawić właśnie w takiej formie. Jeżeli
sobie teraz to skopiuję możemy przyjść również do Stopki i w stopce też mieliśmy coś
takiego. Będę chciał to odpowiednio podlinkować. Tutaj przy okazji gdzie mamy
2019 nic nie stoi na przeszkodzie żeby również skorzystać z takiego zapisu
i funkcją date w php wyrzucić tutaj po prostu pełną wartość
roku czyli będzie czterocyfrowa wartość, odświeżymy.
Zobaczmy i jak widzimy zgadza się wszystko czyli wszystko
działa jak należy. Natomiast teraz chciałbym również linkować do strony
o mnie którą stworzyliśmy, nie w taki sposób ale sposób dynamiczny. Pokażę
ci jak to zrobić przejdziemy do web i co ważne każdą ścieżkę którą tutaj
definiujemy można nazwać, czyli po zdefiniowaniu takiej
ścieżki możemy się odwołać do metody name i po
prostu ją nazwać więc nazwijmy ją about. Tyle wystarczy,
tę będziemy mogli nazwać post, ale na razie nie jest to konieczne, bo ona jest po na
stronie głównej, więc nazwiemy ścieżkę about i samo w sobie to nic nie zmienia,
ale daje nam to taką swobodę, że w miejscu którym ustawiliśmy
na sztywno taki link to będziemy mogli teraz za pomocą funkcji
pomocniczej która nazywa się route podać nazwę którą
tam zdefiniowaliśmy czyli about i w tym miejscu zostanie zwrócony poprawny
adres więc od razu zróbmy sobie to również w stopce. Przejdźmy
tutaj gdzie było About me podstawiam route about i po
odświeżeniu zobacz że tutaj jest poprawny adres do About me i myślę
że widzisz już Jaki jest tego plus. Jeżeli kiedykolwiek zdecydujesz się że About me
powinno być pod about zmieniasz to wyłącznie w jednym pliku, odświeżamy
stronę tutaj oczywiście będzie 404 bo ten adres przestał istnieć, ale
jeżeli wrócimy strony głównej to wszędzie gdzie mieliśmy właśnie
tę funkcję pomocniczą będzie już poprawny adres i będzie to kierowało do about.
Ja natomiast zostawię to w takiej formie jak było przed momentem, ale jak widzisz
taka jest właśnie zaleta nazywania ścieżek. Możemy się do nich
odwoływać właśnie za pomocą funkcji route która przyjmuje również dodatkowe
parametry o czym będzie mówi i później.