Laravel 12 Tippek & Trükkök Magyarul

Route

Mi az a route?

A route-ok segítségével tudjuk irányítani, hogy melyik url címen melyik tartalom töltődjön be. A route-kat vagy másnéven útvonalakat a routes/web.php fájlban állíthatjuk be. Két alap típusa van: get és post. Vannak további típusok is, mint pl.: put, patch, delete, options.

Mikor melyik route típus használjuk?

get

Adatok lekérdezésére szoktuk használni, könyvjelzőként el tudjuk menteni. Az adatok az url-ben látszódnak. Nem módosít adatokat a szerveren, böngészőből közvetlenül meghívható.

Példa get route létrehozásához főoldal esetén (routes/web.php):

A //.. helyére természetesen további kódók kerülnek...
Route::get('/', function () {
	//...
});

post

Adatok küldésére/módosítására szoktuk használni, például form adatok fogadása. Az adatok az url-ben NEM látszódnak, mert a kérés törzsében (body) vannak.

Példa post route létrehozásához (routes/web.php):

Route::post('/', function () {
	//...
});

Egyszerű Példák

A /hello url get-es példa:

Route::get('/hello', function () {
	//...
});

A /bejelentkezes url post-os példa:

Route::post('/bejelentkezes', function () {
	//...
});

Példa tartalom megjelenítésre

Ha szeretnénk valamilyen tartalmat megjeleníteni egy adott url-n, akkor a view() függvénnyel kell visszatérni, bemenő paramétereként kell megadni a blade fájl nevét (blade.php kiterjesztés nélkül). Ezt a módszert csak akkor alkalmazzuk, hogyha egyszerű statikus HTML oldalt akarunk megjeleníteni

 
Route::get('/bejelentkezes', function () {
	return view('valami');
});

Példa Controllerel való nézet megjelenítésre

Először hozzuk létre a controllert (ha még nem létezne). Ebben a példában a PeldaController-elel dolgozunk.

routes/web.php
A /valami url-t a PeldaController-nek az index nevű metódusa fogja irányítani.

use App\Http\Controllers\PeldaController;
...
Route::get('/valami',[PeldaController::class,'index']);
....

app/Http/Controllers/PeldaController.php

namespace App\Http\Controllers;
use Illuminate\Http\Request;
class PeldaController extends Controller{
	public function index(){
		return view("pelda");
	}
}

A resources/views/valami.blade.phptartalma:

<p>Helló world!</p>

A route elnevezése