11 بسته ضروری برای افزایش امکانات Laravel

1 دیدگاه

لاراول یکی از محبوب ترین فریم ورک های PHP برای ایجاد اپلیکیشن های تحت وب می باشد. لاراول خصوصیات زیادی از جمله روتینگ آسان، روش های مختلف برای دسترسی رابطه ای به دیتابیس، Dependency Injection قوی، سیستم ورود و ثبت نام توکار و …

در این مقاله می خواهیم علاوه بر خصوصیات خود لاراول، 15 پکیج اپن سورس برای لاراول را معرفی کنیم تا امکانات آن را افزایش دهند.

Laravel Debugbar

کار این بسته کمک به شما برای دیباگ راحت تر کدهای لاراول است. بدین صورت که نوار ابزاری به زیر صفحه اضافه می کند که اطلاعات زیادی در مورد خطاهای موجود، کوئری های اجرا شده در صفحه، میزان رم استفاده شده و زمان صرف شده برای لود صفحه و …


Entrust

این بسته یکی از بهترین ابزارهای اضافه کردن سیستم دسترسی (Permission) بر پایه نقش (Role) ها به لاراول است. بدین ترتیب که می توانید نقش های مختلفی تعریف کنید و به هر بخش دسترسی های مشخصی اعطا کنید. سپس در روت یا کنترلر یا … چک کنید که کاربر اجازه دسترسی به بخش مربوطه را دارد یا خیر. این بسته دارای متدها و ابزارهای مختلفی است که حتما شما را راضی خواهد کرد.

نمونه کد ایجاد یک نقش بوسیله این بسته به این شکل است:

// Creating role and permissions
$admin = new Role();
$admin->name = 'admin';
$admin->display_name = 'User Administrator'; // optional
$admin->description = 'User is allowed to manage and edit other users'; // optional
$admin->save();

Socialite

این بسته روش ساده ای برای اعتبارسنجی با OAuth ارائه می دهد. بنابراین به سادگی می توانید این امکان را برای کاربران تان فراهم کنید تا بتوانند بدون نیاز به ثبت نام معمولی، با بعضی از محبوب ترین شبکه های اجتماعی مثل فیس بوک، تویتتر، گوگل، گیت هاب و بیت باکت وارد سایت شوند.

$user = Socialite::driver('github')->user();

// OAuth Two Providers
$token = $user->token;
$refreshToken = $user->refreshToken; // not always provided
$expiresIn = $user->expiresIn;

// All Providers
$user->getId();
$user->getName();
$user->getEmail();
$user->getAvatar();

User Verification

با این بسته می توانید کاربران را اعتبارسنجی کرده و ایمیل هایشان را ولیدیت کنید.این بسته یک کد اعتبارسنجی ایجاد کرده و برای کاربر ذخیره می کند.یک ایمیل حاوی کد اعتبارسنجی به ایمیل کاربر می فرستد، بعد از کلیک کاربر روی لینک فوق ، نوع کاربر را به تایید شده تبدیل می کند.

protected function validator(array $data)
{
return Validator::make($data, [
'name' => 'required|max:255',
'email' => 'required|email|max:255|unique:users',
'password' => 'required|min:6|confirmed',
]);
}

Tinker

Tinker به شما اجازه می دهد به کل اپلیکیشن لاراول تان از طریق خط فرمان دسترسی پیدا کنید مثل jobs, events, objects, models و … قبلا این بسته داخل لاراول بود ولی از نسخه 5.4 از هسته لاراول جدا شده است و به صورت بسته ای جدا قابل نصب است.

در همین رابطه :   متدهای جدید Route در لاراول 5.5 معرفی شدند

Breadcrumbs

همانطور که از نام این بسته پیداست می توانید لینک های breadcrumb را به سادگی توسط آن ایجاد کنید.همچنین از اکثر فریم ورک های محبوب فرونت اند مثل Bootstrap, Bulma, Foundation و Materialize پشتیبانی می کند.

// Home > Photos
Breadcrumbs::register('photo.index', function ($breadcrumbs) {
$breadcrumbs->parent('Home');
$breadcrumbs->push('Photos', route('photo.index'));
});

// Home > Photos > Upload Photo
Breadcrumbs::register('photo.create', function ($breadcrumbs) {
$breadcrumbs->parent('photo.index');
$breadcrumbs->push('Upload Photo', route('photo.create'));
});

Eloquent-Sluggable

از اسم این بسته هم مشخص است که قرار است عنوان مقاله یا محصولات یا … سایت ما را به صورت متن قابل گذاشتن در لینک، بوسیله حذف فاصله بین کلمات، جایگزین کردن فاصله یبا علامت – اضافه کردن & و … تبدیل کند. بوسیله Eloquent-Sluggable به سادگی می توانید امکان ایجاد slug را برای همه model های خود فراهم کنید.

class Post extends Eloquent
{
use Sluggable;
protected $fillable = ['title'];
public function sluggable() {
return [
'slug' => [
'source' => ['title']
]
];
}
}

$post = new Post([
'title' => 'My Awesome Blog Post',
]);
// $post->slug is "my-awesome-blog-post"

Migrations Generator

این بسته جالب می تواند از جداول داخل دیتابیس موجود، فایل های migration ایجاد کند شامل index ها و کلیدهای خارجی.وقتی دستور زیر را وارد کردید می توانید برای تمام جدول های موجود در دیتابیس ، فایل Migration بسازید.

php artisan migrate:generate

یا می توانید فقط بعضی از جدول ها را انتخاب کنید:

php artisan migrate:generate table1,table2

NoCaptcha

بسته ای برای پیاده سازی آسان Google reCaptcha در اپ شما برای جلوگیری از ارسال اسپمرها.برای استفاده از این بسته باید کلید سایت و کلید امنیتی را از سایت Google دریافت کنید.


Laravel Backup

با این بسته می توانید از همه فایل های پروژه تان و دیتابیس تان پشتیبان تهیه کنید.کافیست دستور زیر را اجرا کنید:

php artisan backup:run

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

در همین رابطه :   آموزش تبدیل SQL خام به Laravel Query Builder با Orator

Laravel Extended Generators

یک بسته از تیم Laracasts که با آن می توانید صرفه جویی زیادی در زمان و کارهای تان انجام دهید. با این بسته می توانید سریعا مدل ها، view ها، کنترلرها، میگریشن ها، سیدها و … ایجاد کنید.

منبع

دسته بندی : Laravel

یک نظر

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *