راکت
JBolouri
JBolouri
توسط JBolouri مطرح شد
8 پاسخ

اعمال چند middleware بر روی route group

سلام دوستان..

یه میدل ور درست کردم که وضعیت مسدودیت حساب رو چک میکنه..

وقتی اونو روی روت اعمال میکنم درست کار میکنه ولی روی group که اعمال میکنم کار نمیکنه.

روی گروپ اینطوری اعمال میکنم.

Route::middleware(['auth:admin' , 'CheckAdminStatus'])->group(function () {

ولی وقتی روی روت خاصی در آخر روت اضافه میکنم درسته..

مشکل کار چیه بنظرتون؟


ثبت پرسش جدید
محسن بستان
محسن بستان
تخصص :Senior Backend Developer
@mohsenbostan6 سال پیشمطرح شد
0

@javadbolouri72
سلام.
به صورت زیر تعریف کنید دوباره تست کنید:

Route::group(['middleware' => ['auth:admin', 'CheckAdminStatus']], function() {
  // Your Routes Here
});

JBolouri
JBolouri
@javadbolouri726 سال پیشمطرح شد
0

@mohsenbostan

متاسفانه بازم همون نتیجه رو داشت..

این صفحه میادش..


حسین شیری نژاد
حسین شیری نژاد
تخصص :programmer
@hosseinshirinegad986 سال پیشمطرح شد
1

یه پیشنهاد دارم براتون اینکه شما میان افزار auth رو پاک کنید بجاش هردو تا کارو بسپرید به میدلور checkadminstatus. هم برسی لاگین و هم برسی وضعیتو بدین به میدلوری که ایجاد کردین.@javadbolouri72


JBolouri
JBolouri
@javadbolouri726 سال پیشمطرح شد
0

@hosseinshirinegad98

از اولش همین قصد رو داشتم..
پرسیدم گفتن براش میدل ور جدا بساز که انعطاف بیشتری داره برای گسترشش..


حسین شیری نژاد
حسین شیری نژاد
تخصص :programmer
@hosseinshirinegad986 سال پیشمطرح شد
1

به این خاطر گفتم شما این روشو امتحان کنید شاید مشکل میدلورتون حل بشه@javadbolouri72


JBolouri
JBolouri
@javadbolouri726 سال پیشمطرح شد
0

@hosseinshirinegad98
بله ممنون حتما امتحان میکنم..


وحید
وحید
تخصص :Fullstack
@forughi.vahid6 سال پیشمطرح شد
1

@javadbolouri72
میدلور هاتون رو یکی یکی تست کنید تا محل ایراد پیدا بشه

Route::group(['middleware' => 'CheckAdminStatus'], ...)
 Route::group(['middleware' => ['auth:admin', 'CheckAdminStatus']], ...)

برای تست هر کدوم توی میدلور dd بزارید مرحله مرحله برید جلو ببینید برنامتون تا کجا اجرا میشه تا محل مشکل رو پیدا کنید.

  • میدلورهایی رو از هم جدا کنید که فکر میکنید بعدا قراره تغییری پیدا کنن ، مثلا اگر قراره همیشه ادمین بودن با استاتوس با هم چک بشن نیازی نیست توی دو تا میدلور جدا بیاریدشون ، میتونید مثلا چک کردن isAdmin رو هم توی همین checkAdmin چک کنید. ولی اگه قراره بعضی روت ها با استاتوس چک و بعضی بدون اون باشن بهترهمیدلور جدا تعریف بشه مثل همین کاری که انجام دادید.

JBolouri
JBolouri
@javadbolouri726 سال پیشمطرح شد
0

@forughi.vahid

بله ایراد رو پیدا کردم.. برای بعضی از روت ها اون میدل ور باعث میشد که توی یه لوپ بی نهایت بیفته بر همین اون ارور رو میداد.. الان رفع شد ممنون 🌷


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام