View in Telegram
🔶 چگونه دیتا براساس مقام در لاراول نمایش دهیم؟ فرض کنید می خواهید دیتا براساس مقام در یک صفحه نمایش دهید و در حالت عادی دو دیتای کلی در یک صفحه نشون میده هم در مدیر و کاربر عادی. کد زیر:
$tasks = Task::paginate(10);
$tasks = Task::where('owner_id', Auth::id())->paginate(10);
اما چگونه براساس کاربر مدیر و عادی این دو نمایش دهیم. با استفاده تابع کوئری :
$tasks = Task::when(!Auth::user()->isAdmin(), function ($query) {
            $query->where('owner_id', Auth::id());
        })->paginate(10);
و اینم تابع Roles در مدل User:
public function isAdmin(): bool
{
    return $this->roles()->where('title', 'isAdmin')->count() > 0;
}
اینجاست من دیتا براساس گیرنده owner_id یعنی کاربر عادی ثبت کردم و اگر کاربری که عضو شد به عنوان کاربر عادی دیتاهای مدیر کل سایت دیده نمی شود و فقط دیتا کاربر عادی می ببیند. بنابراین با isAdmin() براساس مقام در نمایش دیتاها محدودیت ایجاد کردم. #لاراول @TheRaymondDev
Love Center - Dating, Friends & Matches, NY, LA, Dubai, Global
Love Center - Dating, Friends & Matches, NY, LA, Dubai, Global
Find friends or serious relationships easily