مرضیه
4 سال پیش توسط مرضیه مطرح شد
2 پاسخ

سوال در مورد auth لاراول

سلام وقت بخیر
من از سیستم auth لاراول استفاده کردم
قببلا از کدی که گذاشتم استفاده میکردم برای نمایش لینک ادمین و یا پروفایل براساس رول آی دی
من یک جدول roles درست کردم و رول ادمین و کاربر رو بهش دادم و متصل کردم به جدول یوزر
و یک جدول role_user که به roles و users متصله

@if(! Auth::check())
                    <li><a href="/login">Login</a></li>
                @else
                    @if(Auth::user()->role_id == 1)
                        <li><a href="/dashboard">Dashboard</a></li>
                    @endif
                        @if(Auth::user()->role_id == 2)
                            <li><a href="/profile">profile</a></li>
                        @endif
                @endif

ولی الان این کد رو انجام نمیده از چه طریقی میتونم در منوی سایت نسون بدم اگر ادمین بود این لینک و اگر کابر بود این لینک نمایش داده بشه؟


ثبت پرسش جدید
فخرالدین لنگی
تخصص : برنامه نویس وب، آندروید و سیست...
@fakhraddin 4 سال پیش آپدیت شد
0

با سلام و خسته نباشید
می تونید از مراحل زیر استفاده کنید

  1. یک attribute تعریف مثلا به اسم getHasAdminAttribute که مثلا مقدار بولین true یا false برگردونه بعنی اگر رول کاربر ادمین بود true در غیر اینصورت false اگرم خواستید می تونید یکی دیگه هم برای یوزر ایجاد کنید البته چون دوتا رول دارید من نیاز نمی دونم
  2. بعد هر جا نیاز داشتید که بفهمید کاربری که لاگین شده ادمین می تونید بنویسید
@if(auth()->check() && auth()->user()->has_admin)
                //Do
            @endif

توضیحات بیشتری خواستید من در خدمتم


آرش تقوی
تخصص : برنامه نویس فول استک
@arash.taghavi69 4 سال پیش آپدیت شد
0

دوست عزیز باید اینجوری بنویسی:

Auth::user()->roles()->role_id

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

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