علی
6 سال پیش توسط علی مطرح شد
1 پاسخ

سوالی در مورد هدایت به صفحه پروفایل

سلام دوستان . سناریو بدین صورته که برنامه چندین نقش مختلف داره . مثلا ( کاربر ، ادمین ، نویسنده ، دپارتمان ای تی، دپارتمان مالی ، دپارتمان فروش )
حالا من میخام وقتی کاربر لاگین میکنه متناسب با نقشش به صفحه پروفایل مربوط به خودش هدایت بشه. با middleware نتونستم این کارو بکنم خطا میگیرم همش. بهترین راه چیه ؟ این که من همشونو هدایت کنم به صفحه profile.blade و اونجا چندتا if بذارم ؟
یا اینکه چندین صفحه مختلف داشته باشم مثلا user.profile ، admin.profile و ....
مشکل middleware رو نفهمیدم واقعا . یکی نوشتم چندتا if داشت مشکلیم نبود ولی هر زمان اجرا میشد مثلا برای کاربر درست بود ولی برای بقیش خطا میداد. خیلی عجیب بود برام واقعا


ثبت پرسش جدید
علی
تخصص : Laravel
@alif 6 سال پیش آپدیت شد
0
        class ProfileMiddleware  
        {  
        public function handle($request, Closure $next)  
        {  
        if (auth()->check()) {

                    if (auth()->user()->role == 'admin') {
                        return redirect(route('admin.profile'));
                    } elseif (auth()->user()->role == 'user') {
                        return redirect(route('user.profile'));
                    } elseif (auth()->user()->role == 'financial') {
                        return redirect(route('fanincial.profile'));
                    }

                    return $next($request);
                }
            }

        }

خب این رو من نوشتم و در route::group این middleware رو قرار دادم ولی اجرا نمیشه و خطای زیر رو میده

This page isn’t working
192.168.12.42 redirected you too many times.
Try clearing your cookies.
ERR_TOO_MANY_REDIRECTS


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

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