Wordpress | Laravel | PHP

Sadržaj

Ako je ruta ispravno definisana i još uvek dobijate 404 grešku, onda postoji nekoliko mesta gde se problem može javiti. Evo nekoliko koraka koje možete preduzeti kako biste dijagnostifikovali problem:

Redosled ruta

Važno je obratiti pažnju na redosled definisanja ruta u web.php.

Ako imate Route::resource(‘patients’, PatientController::class);  pre Route::get(‘/patients/check’, [PatientController::class, ‘checkPatientExists’])->name(‘patients.check’);  Laravel će interpretirati check kao ID pacijenta za show metodu, što može uzrokovati 404 grešku. Uvek postavite specifičnije rute pre generalnih resursa:

Route::get('/patients/check', [PatientController::class, 'checkPatientExists'])->name('patients.check');
Route::resource('patients', PatientController::class);

Metod HTTP zahteva

Da, problem može biti i u tipu HTTP zahteva. Ako je vaša ruta definisana kao GET u web.php, ali pokušavate da je pozovete kao POST (ili obrnuto), dobićete 404 grešku. (Ako želite da prenesete osetljive informacije ili veliku količinu podataka, bolje je koristiti POST metodu.)

Proverite kontroler

Uverite se da metoda koju pozivate stvarno postoji u kontroleru. Takođe, uverite se da nema grešaka unutar te metode koje bi mogle prekinuti izvršavanje.

Koristite ime rute u AJAX pozivu

Da biste izbegli moguće greške u URL-u, možete koristiti generisani URL iz imena rute:

url: "{{ route('patients.check') }}"