برنامه نویسی

نحوه ایجاد یک بسته در لاراول

سلام صنعتگر ،

Laravel یکی از محبوب ترین چارچوب های PHP است و ماهیت مدولار آن به توسعه دهندگان اجازه می دهد تا بسته های قابل استفاده مجدد را ایجاد کنند. یک بسته یک بسته نرم افزاری از کد قابل استفاده مجدد است که می تواند در چندین پروژه Laravel به اشتراک گذاشته و نصب شود.

در این راهنما ، ما شما را از طریق ایجاد یک بسته Laravel از ابتدا برای مدیریت کاربر پیاده روی خواهیم کرد.

مرحله 1: یک بسته جدید لاراول را تنظیم کنید
قبل از شروع ، مطمئن شوید که Laravel نصب شده است. شما می توانید یک بسته Laravel را از دو طریق ایجاد کنید:

1. یک فهرست برای بسته ایجاد کنید
به پروژه Laravel خود بروید packages دایرکتوری (اگر وجود ندارد ، آن را ایجاد کنید):

mkdir -p packages/laravelusermanager
cd packages/laravelusermanager
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

2. آهنگساز را اولیه کنید
دستور زیر را در داخل فهرست بسته بندی کنید تا نسخه ساز را آغاز کنید:

composer init
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

3. بسته را در تعریف کنید composer.json
در بسته های شما composer.json، اطمینان حاصل کنید که موارد زیر را شامل می شود:

{
    "name": "laraelusermanager",
    "description": "A sample Laravel package for user management",
    "type": "library",
    "autoload": {
        "psr-4": {
            "LaravelUserManager\\LaravelUserManager\\": "src/"
        }
    },
    "require": {
        "php": ">=8.0",
        "illuminate/support": "^10.0"
    }
}
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

4. بسته بندی را در لاراول ثبت کنید
در برنامه Laravel ، فضای نام بسته خود را به آن اضافه کنید composer.json در پروژه ریشه:

"autoload": {
    "psr-4": {
        "LaravelUserManager\\LaravelUserManager\\": "packages/laravelusermanager/src/"
    }
}
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

دویدن composer dump-autoload برای بارگیری مجدد پرونده های AutoLoad.

مرحله 2: ساختار بسته را ایجاد کنید

درون packages/laravelusermanager/, دایرکتوری های زیر را ایجاد کنید:

mkdir -p src config routes resources/views
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

1. ارائه دهنده خدمات را ایجاد کنید

یک فایل ایجاد کنید src/PackageServiceProvider.php و ارائه دهنده خدمات را تعریف کنید:



namespace VendorName\LaravelUserManager;

use Illuminate\Support\ServiceProvider;

class PackageServiceProvider extends ServiceProvider
{
    public function boot()
    {
        // Load routes
        $this->loadRoutesFrom(__DIR__.'/../routes/web.php');

        // Load views
        $this->loadViewsFrom(__DIR__.'/../resources/views', 'laravelusermanager');

        // Publish config
        $this->publishes([
            __DIR__.'/../config/config.php' => config_path('laravelusermanager.php'),
        ]);
    }

    public function register()
    {
        // Merge package config
        $this->mergeConfigFrom(__DIR__.'/../config/config.php', 'laravelusermanager');
    }
}
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

2. مسیرها را تعریف کنید

ایجاد کردن routes/web.php:



use Illuminate\Support\Facades\Route;
use LaravelUserManager\Controllers\UserController;

Route::resource('users', UserController::class);
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

3. یک فایل پیکربندی ایجاد کنید

ایجاد کردن config/config.php:



return [
    'setting' => 'default_value',
];
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

4. نمای ایجاد کنید

ایجاد کردن resources/views/users/index.blade.php:

User List

    @foreach ($users as $user)
        
    @endforeach
ID Name Email
{{ $user->id }} {{ $user->name }} {{ $user->email }}
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

5. یک کنترلر ایجاد کنید

ایجاد کردن src/Controllers/UserController.php:



namespace LaravelUserManager\LaravelUserManager\Controllers;

use Illuminate\Http\Request;
use App\Models\User;
use Illuminate\Routing\Controller;

class UserController extends Controller
{
    public function index()
    {
        $users = User::all();
        return view('laravelusermanager::users.index', compact('users'));
    }

    public function create()
    {
        return view('laravelusermanager::users.create');
    }

    public function store(Request $request)
    {
        User::create($request->all());
        return redirect()->route('users.index');
    }
}
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

مرحله 3: بسته را در لاراول ثبت کنید

در config/app.php، ارائه دهنده خدمات را به آرایه ارائه دهندگان اضافه کنید:

'providers' => [
    LaravelUserManager\PackageServiceProvider::class,
];
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

مرحله 4: بسته را آزمایش کنید

دویدن php artisan serve و بازدید http://localhost:8000/usersبشر شما باید لیست کاربران را مشاهده کنید.

مرحله 5: انتشار بسته

اگر می خواهید بسته خود را با دیگران به اشتراک بگذارید: کد خود را به GitHub فشار دهید.

با ثبت نام آن در حساب آهنگساز خود ، آن را به Packagist ارسال کنید.

برای نصب آن در سایر پروژه های Laravel ، استفاده کنید:
composer require laravelusermanager

پایان
ایجاد یک بسته Laravel یک روش عالی برای مدولار سازی و استفاده مجدد از کد است. با دنبال کردن این مراحل ، می توانید بسته های Laravel خود را به طور کارآمد بسازید و توزیع کنید!

خواندن مبارک!
برنامه نویسی مبارک!

نوشته های مشابه

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

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

دکمه بازگشت به بالا