Laravel Authorization: Extra Packages — Spatie, Bouncer এবং অন্যান্য প্যাকেজের সহজ বাংলা টিউটোরিয়াল | Part 20
Laravel এ Authorization সিস্টেম তৈরিতে Spatie Permission, Bouncer এবং অন্যান্য পপুলার প্যাকেজ সম্পর্কে জানুন। কীভাবে ব্যবহার করবেন সেটা শিখুন।
প্রিয় বন্ধু, Laravel এ অথরাইজেশনের জন্য কিছু পপুলার প্যাকেজ রয়েছে যেগুলো আপনার অথরাইজেশন সিস্টেম তৈরি করতে সাহায্য করবে। সেগুলোর মধ্যে কিছু হল:
Spatie Permission
Spatie Permission হল সবচেয়ে জনপ্রিয় প্যাকেজ যা রোল এবং পারমিশনের মাধ্যমে অথরাইজেশন প্রদান করে।
এর সুবিধা:
- সহজ রোল এবং পারমিশন ম্যানেজমেন্ট
- ব্লেড টেমপ্লেটসহ সাপোর্ট
- ক্যাশিং সাপোর্ট পারফর্ম্যান্স বাড়ায়
ব্যবহার:
// Role and Permission
$role = Role::create(['name' => 'writer']);
$permission = Permission::create(['name' => 'edit articles']);
// Assigning permission to role
$role->givePermissionTo($permission);// Checking role has permission
$role->hasPermissionTo('edit articles');
Bouncer
Bouncer হল আরেকটি জনপ্রিয় প্যাকেজ যা অথরাইজেশন এবং রোলের জন্য abilities ব্যবহার করে।
বৈশিষ্ট্য:
- সহজ abilities এবং রোল ম্যানেজমেন্ট
- Organize abilities into hierarchies
- Blade directives দিয়ে সহজ অথরাইজেশন
ব্যবহার:
// Define abilities
Bouncer::allow('edit-articles')->to('writer');
// Assign role
Bouncer::assign('writer')->to($user);// Check authorization
Bouncer::can('edit-articles');
Laravel Permission
লারাভেল পারমিশন প্যাকেজটি নেটিভলি Laravel এর জন্য তৈরি হয়েছে।
বৈশিষ্ট্যসমূহ:
- সহজ রোল, পারমিশন এবং টিম ম্যানেজমেন্ট
- সাপোর্ট করে Blade এবং Gate
- কাস্টমিজযোগ্য গার্ড এবং পারমিশন
ব্যবহার:
// Create role
$role = app('permission')->createRole('writer', 'writer description');
// Create permission
$permission = app('permission')->createPermission('edit articles', 'edit articles description');// Assign permission to role
$role->givePermissionTo($permission);
আশা করি এই পপুলার প্যাকেজগুলো সম্পর্কে ধারণা পেয়েছেন যা আপনার অথরাইজেশন কাজ সহজ করে তোলবে।