پکیج لاراول چیست؟ به عنوان یک توسعه دهنده PHP ، شما باید با چگونگی استفاده از فریم ورک ها آشنا باشید. فریم ورک ها تلاش می کنند تا روند توسعه را با شیوه های رایج ساده سازی که در اکثر پروژه های وب بزرگ استفاده می شوند از جمله پکیج ها ، ماژول ها ، پلاگین ها و … ساده تر کنند.
لاراول یکی از محبوب ترین فریم ورک های توسعه برنامه های کاربردی وب است.این فریم ورک محیطی ساده و سریع را به توسعه دهندگان ارائه می دهد.لاراول قصد دارد کارهای معمول مانند احراز هویت (authentication) ، روتینگ (routing) ، جلسات (sessions) ، کش (caching) و … که تقریبا در تمام پروژه های وب استفاده می شود را در پروسه توسعه ساده و سرراست کند. البته لاراول قابلیت های برنامه را قربانی نخواهد کرد یا به بیان ساده تر آنها را به خطر نمی اندازد بلکه فقط فرآیند توسعه را به یک فرآیند دلپذیر و آسان برای توسعه دهنده تبدیل می کند. به عنوان مثال، شما می توانید راه های مختلفی را برای دسترسی به پایگاه داده های رابطه ای استفاده کنید ، می توانید تزریق وابستگی (dependency injection) و خیلی بیشتر از طریق این پکیج ها را انجام دهید.
پکیج ها دو نوع هستند: پکیج های مستقل، پکیج های مخصوص لاراول. این آموزش به طور انحصاری شامل بهترین پکیج های لاراول می باشد.
یکی از مزیت های بزرگ استفاده از پکیج های لاراول این است که آنها اجازه دسترسی به تمام ویژگی هایی که فریم ورک ارائه می دهد از جمله (روتینگ ، مایگریشن ، tests ، ویوها) و بسیاری از ویژگی های مفید دیگر دارند. یکی دیگر از مزیت های مهم یک پکیج اصل DRY یا Don’t Repeat Yourself می باشد.
در این مقاله از تجاری اپ ما به شما بهترین پکیج های لاراول را که باید بشناسید و بطور منظم در برنامه های خود استفاده کنید را به شما معرفی می کنیم.با ما همراه باشید.
برای توسعه پکیج لاراول، هنگام نوشتن پکیج ها، پکیج شما به طورمعمول به تمام helper های تست لاراول دسترسی نخواهد داشت.پکیج orchestra/testbench امکان استفاده از تمام helper های تست لاراول را در تست های پکیج شما فراهم میکند.
چهار گام مهم که باید برای نوشتن یک پکیج لاراول بدانید:
پکیج های زیادی برای لاراول وجود دارند که برنامه را سریع تر می کنند و وظایف خود را در خصوص امنیت و کارایی انجام می دهند. ما در این مقاله بهترین پکیج های لاراول را که می توانید برای بهینه سازی عملکرد برنامه وب خود استفاده کنید ، را به شما معرفی می کنیم.
نقش ها و مجوز ها بخش مهمی از بسیاری از وب سایت ها را تشکیل می دهند.لاراول پکیج های زیادی را برای این منظور دارد. Spatie یکی از بهترین پکیج ها برای مجوزها می باشد.
مزایا:
نقش ها
مجوزها
مجوزهای مستقیم
Middleware
Multiple Blade Directives
دستورات Artisan
این پکیج یک راه قابل تغییر برای اضافه کردن مجوزهای مبتنی بر نقش به برنامه لاراول شما را فراهم می کند. این پکیج چهار جدول را ایجاد می کند: جدول roles برای ذخیره نقش ها ، جدول permissions برای ذخیره مجوزها ، جدول role_user برای ذخیره روابط one-to-many بین roles و users ، جدول permission_role برای ذخیره روابط many-to-many بین roles و 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();
در ادامه چگونگی اختصاص نقش ها را به کاربران مشاهده می کنید:
user = User::where('username', '=', 'michele')->first();
$user->attachRole($admin);
Now, you must give permissions to these roles:
$createPost = new Permission();
$createPost->name = 'create-post';
$createPost->display_name = 'Create Posts';
$createPost->description = 'create new blog posts';
$createPost->save();
$admin->attachPermission($createPost);
Laravel Debugbar یکی از پکیج های لاراول است که به کاربران کمک می کند یک نوار ابزار توسعه دهنده را به پروژه خود اضافه کنند. این پکیج به طور عمده برای اهداف اشکال زدایی استفاده می شود.گزینه های زیادی در Debugbar وجود دارد که به شما کمک خواهند کرد تا تمام query هایی که برنامه شما ارائه می دهد را نمایش دهید، همه چیز مربوط به route فعلی به دست بیاوید ، قالب های رندر شده و همچنین پارامترهایی که پاس دادید (ارسال کردید) را نشان می دهد. شما می توانید با استفاده از Facade (هنگام اضافه شدن) پیام ها را اضافه کنید و زیر تب ‘Messages’ در Debugbar لاراول نمایش دهید.
Debugbar::info($object);
Debugbar::error('Error!');
Debugbar::warning('Watch out…');
Debugbar::addMessage('Another message', 'mylabel')
این پکیج به شما اجازه میدهد تا تأیید کاربر و اعتبارسنجی ایمیل (ها) را مدیریت کنید. این پکیج یک token تایید برای کاربر ثبت شده تولید و ذخیره می کند.یک ایمیل حاوی لینک تایید token برای مدیریت token ارسال می کند و کاربر را به عنوان تأیید شده تعیین می کند.
public function register(Request $request)
{
$this->validator($request->all())->validate();
$user = $this->create($request->all());
event(new Registered($user));
$this->guard()->login($user);
UserVerification::generate($user);
UserVerification::send($user, 'My Custom E-mail Subject');
return $this->registered($request, $user)
?: redirect($this->redirectPath());
}
Socialite یک راه ساده و آسان برای احراز هویت OAuth را ارائه می دهد. این پکیج به کاربران اجازه می دهد تا از طریق برخی از محبوب ترین شبکه های اجتماعی و سرویس ها از جمله فیس بوک ، توییتر، گوگل، گیت هاب و BitBucket وارد شوند.
$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();
Laravel Mix که قبلا با نام Laravel Elixir شناخته شده بود ، یک رابط برنامه نویسی کاربردی (API) تمیز و غنی برای تعریف مراحل webpack-build برای پروژه شما فراهم می کند.این ابزار تاکنون قویترین ابزار asset تلفیقی برای لاراول بوده است.
mix.js('resources/assets/js/app.js', 'public/js')
.sass('resources/assets/sass/app.scss', 'public/css');
Slugging یا Slug کردن فرآیند ایجاد یک نسخه ساده و متناسب ، URL-friendly از یک رشته است با تبدیل آن به یک مورد و از بین بردن فضاهای خالی ، حروف چکیده ، & و غیره. با Eloquent-Sluggable ، شما به راحتی می توانید برای تمام مدلهای Eloquent در پروژه خود ، Slug ایجاد کنید.
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
Migration generator یک پکیج لاراول است که شما می توانید برای ایجاد migration ها از دیتابیس موجود ، شامل index ها و کلیدهای خارجی استفاده کنید. هنگام اجرای دستورات زیر می توانید migration هایی را برای تمام جداول در پایگاه داده خود ایجاد کنید.
php artisan migrate:generate
شما همچنین می توانید تنها جداول خاصی را که میخواهید migrate کنید را انتخاب کنید:
php artisan migrate:generate table1,table2
این پکیج لاراول یک نسخه بکاپ از تمام فایل های پروژه شما ایجاد می کند. برای ایجاد یک نسخه بکاپ ، کاری که باید انجام دهید این است که دستور زیر را اجرا کنید:
php artisan backup:run
No Captcha یک پکیج لاراول برای اعتبارسنجی Google reCaptcha و حفاظت از فرم ها در مقابل ارسال اسپم می باشد. ابتدا باید یک کلید API رایگان از reCaptcha فراهم کنید
NoCaptcha::shouldReceive('verifyResponse')
->once()
->andReturn(true);
$response = $this->json('POST', '/register', [
'g-recaptcha-response' => '1',
'name' => 'Pardeep',
'email' => 'pardeep@example.com',
'password' => '123456',
'password_confirmation' => '123456',
]);
GraphQL یک زبان کوئری برای API ها است که جایگزین معماری REST می باشد. توسعه دهندگان ساختار داده های مورد نیاز را تعریف می کنند و از یک سرور دقیقا همان ساختار را دریافت می کنند. این پکیج به شما در راه اندازی و استفاده از GraphQL در پروژه های لاراول کمک می کند.
دو گروه بزرگ برای ساخت پنل مدیریت وجود دارد: سازندگان بصری (visual) و مبتنی بر کنسول.انتخاب هرکدام به اولویت و نوع کار شما بستگی دارد ، اینکه آیا دوست دارید از رابط کاربر گرافیکی استفاده کنید یا دستورات Artisan را به همراه پارامترها تایپ کنید.
همچنین ، باید یک اصطلاح تحت عنوان عملیات CRUD که مخفف عبارات “Create, Read, Update, Delete” می باشد را اینجا یادآوری کنیم که این عملیات اجزای سازنده تمام پنل های مدیریت می باشد.
Voyager یک پکیج مدیریت لارول است که می توان با استفاده از آن یک پنل ادمین ساخت. برخی از امکاناتی که این پکیج به شما ارائه می دهد عبارتند از : محیط کاربری آسان برای استفاده ، عملیات (BREAD (CRUD ، بخش مدیریت کاربران ، دارا بودن ابزار سازنده منو ، تنظیم فونت و آیکن مورد نظر با استفاده از کلاس های Voyager
پس از نصب و ورود به پنل مدیریت خود، این پکیج به شما اجازه می دهد تا به صورت بصری ماژول هایی ایجاد کنید که CRUD های شما را نشان می دهند.
یک پلتفرم به شما می دهد که ساده ترین و سریع ترین راه برای ایجاد برنامه های کسب و کار حرفه ای و با کیفیت ، برنامه های کاربردی و سیستم های مدیریت محتوا با استفاده از لاراول می باشد.
Bagisto یک پکیج اپن سورس تجارت الکترونیک لاراول می باشد که هدف آن ایجاد کسب و کار کوچک و متوسط برای شما می باشد.
AvoRed یک پلتفرم توسعه نرم افزار تجارت آنلاین متن باز رایگان است که با PHP و بر اساس لاراول نوشته شده است. همچنین AvoRed یک تجارت آنلاین هوشمندانه و ماژولار است که شما می توانید با توجه به نیازهای خود و بوسیله رابط کاربری پیش فرض آن که به صورت مدرن و رسپانسیو می باشد آن را سفارشی سازی کنید.
Telescope یک دستیار دیباگ ظریف برای فریمورک لاراول می باشد. Telescope یک دید کلی در مورد درخواست هایی که به برنامه شما وارد می شوند ، استثنائات ، ورودی های Log ، کوئری های دیتابیس ، ایمیل ، نوتیفیکیشن ها ، عملیات کش ، تسک های زمانبندی شده و … را ارائه می کند. Telescope یک مکمل و همراه شگفت انگیز برای محیط توسعه لوکال لاراول شما ایجاد می کند.