Sprawdzenia wartości funkcji za każdym razem wywołania routingu

0

Mam taki problem potrzebuje, żeby laravel sprawdzał za każdym razem (w momencie jak użytkownik jest zalogowany, przy przechodzeniu z strony na stronę) czy dane pole tekstowe w bazie ma wartość true w momencie jak jest false to wyloguje użytkownika wiem że mogę za każdym razem w controllerze dać instrukcję warunkową, ale bym musiał zmodyfikować wszystkie controllery, ale czy jest mozliwość to zmienić w pliku rouing/web.php

Bo teraz mam w pliku web.php akcje dla routingu określonej strony.

Route::get('search/doctor/searchMain', [App\Http\Controllers\Doctor\Search\SearchController::class, 'searchMain'])
  ->name('doctor.search')
  ->middleware('auth')
  ->middleware('can:doctor');

i tam jest ->middleware('can:doctor'); i teraz da się jakoś zrobić, żeby dodatkowo dać wywołanie funkcji np checkField() ale żeby to było w pliku routing/web.php ?

0

tak robisz sobie taki swoj middleware i dajesz

Route::group(['middleware' => ['auth', 'check.user.twoja.jakas.nazwa']], function () {
  Route::get('search/doctor/searchMain', [App\Http\Controllers\Doctor\Search\SearchController::class, 'searchMain'])
    ->name('doctor.search')
    ->middleware('auth')
    ->middleware('can:doctor');
});

wtedy wszystkie routy wykonane w tej grupie z middlewarem wywola sie to co chesz i sprawdzi, to masz 5 min roboty. mozesz dac kilka middlewarow ja dalem 2 jeden auth i drugi moj, ale mozesz dac np auth, verified, i swoj i inne ten verified to dopiero jak ktos potwierdzi adres email

1 użytkowników online, w tym zalogowanych: 0, gości: 1