یلدا ادامه داره... ❤️ ۴۰ درصد تخفیف همه دورهها
استفاده از تخفیفهاسلام - لطفا یکم وقت بزارین و متن طولانیم رو بخونید - ممنون
من یک سایت دارم مینویسم که همه ی کاربرای این سایت برای خودشون یک پنل کاربری دارن و کاراشون رو اونجا انجام میدن
از طرفی یک مدیر خیلی اصلی ( مدیر تمامی کاربران) دارم که روی همه ی اینها نظارت داره
من میخام مدیر اصلی سایت رو توی یک جدول کاملا جدا ذخیره کنم .
یعنی یک جدول دیگه بسازم به نام administrator و مدیر اصلی رو اونجا ذخیره کنم .
چون سطح دسترسی این مدیر خیلی بالاست میخام این کار رو کنم(یعنی برای امنیت بیشتر )
اما از طرفی نمیدونم مثلا برای چک کردن اینکه مدیراصلی لاگین کرده یا نه چی باید بنویسم؟ ( چون هم جدولش هم صفحه لاگینش فرق میکنه با بقیه دیگه و از پیشفرض لاراول استفاده نمیکنم)
چون توی جدول user و استفاده از ابراز auth ( auth::chck)خود لاراول خیلی راحت میتونیم با یه middleware از پیش تعریف شده این کار رو بکنیم
Route::group(['middleware' => ['auth:web']],function (){
});
اما الان که از یک جدول جدا استفاده میکنم این ابزار رو ندارم .
دو تا سوال مهم دارم :
سوال اول : اصلا این کار درسته یا نه ؟یعنی اگه مدیر اصلی رو توی یک جدول جدا بنویسم مدیریتش و امنیتش بیشتر و راحت تر میشه یا نه
سوال دوم : اگه نوشتم باید برای چک کردن این که مدیر اصلیم لاگین کرده یا نه از یک session ساخته شده (یعنی وقتی لاگین کرد یک سیشن زمانی بسازم و وجود داشتن یا نداشتن این سیشن رو بررسی کنم) استفاده کنم درسته یا نه؟
خیر اشتباهه ، شما تویی همون جدول یک فیلد level اضاف کن و سطح دسترسی شون رو تعیین کن و پیشرفته ترش استفاده از spatie laravel permission هستش
سلام @juza66 و ممنون آقای موسوی توضیحتون عالی و کامل بود
حقیقتا من فیلم اموزشی قسمت "سطح بندی پیشرفته کاربران روش acl ( فیلم اقای حسام موسوی)" رو مشاهده کردم و یکم گیج شدم ( که البته فهمیدم نحوه استفاده از این روش رو، اما نحوه پیاده سازیش رو به طور کامل درک نکردم .)
اما حالا که شما این پکیج رو معرفی کردید همه چیز برام بسیار قابل فهم تر و راحت تر شد.
البته توی اون فیلم ها هم اقای حسام موسوی میگه که ما یکبار پیاده سازی میکنیم و برای همیشه ازش استفاده میکنیم.
با معرفی پکیج شما حتی نیازی به پیاده سازی هم دیگه نیست.
تشکر فراوان
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟