Davood
7 ماه پیش توسط Davood مطرح شد
4 پاسخ

سطوح دسترسی در لاراول

سلام دوستان
من یه سیستم سطح دسترسی دارم تو لاراول یه مشکل داره و اون هم اینکه که کاربر مدیر میتونه کاربر سوپر یوزر یا ادمین اصلی رو ویرایش یا حذف کنه
من میخوام هر کاربر بتونه خودش و کاربرای سطح پایین خودشو ویرایش حتی حتی نتونه مدیر هم سطح خودشو ویرایش کنه شرطشو باید چطوری بذارم؟


ثبت پرسش جدید
رایموند
تخصص : مختصص وردپرس - برنامه نویس لار...
@Raymond 7 ماه پیش مطرح شد
1

درود خوبی...
من از Permission spatie استفاده می کنم که دسترسی ها به این صورت تعریف کردم.

هر مدیری می تونه برای کاربر عادی دسترسی پایین تری بدهد که به این صورت هست.

class Permission extends PermissionSpatie
{
    PUBLIC CONST PERMISSION_SUPER_ADMIN = 'permission super admin';
    PUBLIC CONST PERMISSION_ADMIN = 'permission admin';
    PUBLIC CONST PERMISSION_USERS = 'permission users';
    PUBLIC CONST PERMISSION_CATEGORIES = 'permission categories';
    PUBLIC CONST PERMISSION_ROLES = 'permission roles';
    PUBLIC CONST PERMISSION_POSTS = 'permission posts';
    PUBLIC CONST PERMISSION_AUTHORS = 'permission authors';
    PUBLIC CONST PERMISSION_COMMENTS = 'permission comments';

    public static array $permissions = [
        self::PERMISSION_SUPER_ADMIN,
        self::PERMISSION_ADMIN,
        self::PERMISSION_USERS,
        self::PERMISSION_CATEGORIES,
        self::PERMISSION_ROLES,
        self::PERMISSION_POSTS,
        self::PERMISSION_AUTHORS,
        self::PERMISSION_COMMENTS
    ];
}

super admin حکم مدیر کل داره که به همه دسترسی داره و admin همین مدیر سطح پایین هست .
می توانید پروژه که نوشتم رو بخونید.
ستاره یادت نره..
https://github.com/Rayiumir/News
https://github.com/Rayiumir/News/tree/main/modules/Rayium/Role


مهدی حاجی محمدی
تخصص : برنامه نویس
@mahdihmo 7 ماه پیش مطرح شد
0

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


مهدی حاجی محمدی
تخصص : برنامه نویس
@mahdihmo 7 ماه پیش مطرح شد
0

سلام ممنون از اشتراک فایلتون
یک سوالی که داشتم چجوری باید توی دیتابیس پروژه ای که لینکشو گذاشتید به یک کاربر نقش ادمین بدم
ممنون
@Raymond


رایموند
تخصص : مختصص وردپرس - برنامه نویس لار...
@Raymond 7 ماه پیش آپدیت شد
0

@mahdihmo
بخوای برای کاربر نقش تعریف کنید باید دکمه افزودن نقش رو تعریف کنید.
به این صورت :

@foreach($row->roles as $rows)
<li>
<span class="badge bg-secondary">{{$rows->name}}</span>
<span class="badge bg-danger" onclick="event.preventDefault();document.getElementById('trash-{{$rows->id}}').submit()" title="حذف"><i class="fa-duotone fa-minus-circle"></i></span>
</li>
<form id="trash-{{$rows->id}}" action="{{ route('users.remove.roles', ['userId' => $row->id, 'roleId' => $rows->id]) }}" method="POST">@csrf @method('DELETE')</form>
@endforeach

سورس پروژه بخون یا متوجه این موضوع شوید.


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

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