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

- 11 ماه پیش
توسط علی آپدیت شد
علی ( 4706 تجربه )
11 ماه پیش

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

علی ( 4706 تجربه )
11 ماه پیش
 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
۱۹۲.۱۶۸.۱۲.۴۲ redirected you too many times.
Try clearing your cookies.
ERR_TOO_MANY_REDIRECTS

برای ارسال پاسخ باید وارد سایت شوید