Как реализовать структуру модулей Laravel с помощью пакета Nwidart

Originally posted @ https://codeanddeploy.com посетите и скачайте пример кода:
https://codeanddeploy.com/blog/laravel/how-to-implement-laravel-modules-structure-with-nwidart-package

В этом посте я покажу вам, как реализовать структуру модулей Laravel с помощью пакета Nwidart. Это поможет нам сделать наше приложение чистым и организованным кодом, который легко поддерживать и повторно использовать для любых модулей внутри приложения.

Некоторые разработчики рекомендуют внедрять модули Laravel, потому что они поставляются с собственными контроллерами, моделями, ресурсами и многим другим. Это поможет нам не сломать наше приложение, даже если мы удалим один из наших модулей laravel, если это не базовый модуль, который связан с другими модулями.

Codeanddeploy также использует структуры модулей laravel.

При использовании модулей Laravel он будет генерировать следующие модули:

  1. Config

  2. Консоль

  3. База данных

  4. Сущности

  5. Http

  6. Провайдеры

  7. Ресурсы

  8. Маршруты

  9. Тесты

Теперь давайте приступим к установке модулей Laravel.

Шаг 1: Установка Laravel

Если у вас еще не установлен Laravel 8, просто выполните следующую команду:

composer create-project --prefer-dist laravel/laravel laravel-modules-example

cd laravel-modules-example
Войти в полноэкранный режим Выйти из полноэкранного режима

Шаг 2: Установка пакета модулей Laravel

Теперь давайте установим наш пакет модулей Laravel от Nwidart. Выполните следующую команду:

composer require nwidart/laravel-modules
Войти в полноэкранный режим Выйти из полноэкранного режима

Шаг 3: Опубликовать файл конфигурации

Выполните следующую команду для публикации файла конфигурации.

php artisan vendor:publish --provider="NwidartModulesLaravelModulesServiceProvider"
Войти в полноэкранный режим Выйти из полноэкранного режима

Шаг 4: Настройка автозагрузки

Теперь нам нужно добавить "Modules":"Modules/", в ваш composer в разделе autoload > psr-4. См. пример ниже:

"autoload": {
    "psr-4": {
        "App\": "app/",
        "Modules\": "Modules/",
        "Database\Factories\": "database/factories/",
        "Database\Seeders\": "database/seeders/"
    }
},
Вход в полноэкранный режим Выход из полноэкранного режима

Затем выполните следующую команду после установки выше:

composer dump-autoload
Войти в полноэкранный режим Выйти из полноэкранного режима

Итак, мы уже настроили наш пакет модулей Laravel. Далее давайте создадим модуль для нашего приложения Laravel.

Шаг 5: Создать модуль

Синтаксис команды create module:

php artisan make:module module_name
Войти в полноэкранный режим Выйти из полноэкранного режима

Затем выполните следующую команду для создания модуля, давайте сделаем пример для модуля Posts.

php artisan make:module posts
Войти в полноэкранный режим Выйти из полноэкранного режима

После выполнения вышеуказанных команд будет создан модуль Posts в папке Modules. Смотрите ниже структуру модулей Laravel:

app/
bootstrap/
vendor/
Modules/
  ├── Posts/
      ├── Assets/
      ├── Config/
      ├── Console/
      ├── Database/
          ├── Migrations/
          ├── Seeders/
      ├── Entities/
      ├── Http/
          ├── Controllers/
          ├── Middleware/
          ├── Requests/
      ├── Providers/
          ├── PostsServiceProvider.php
          ├── RouteServiceProvider.php
      ├── Resources/
          ├── assets/
              ├── js/
                ├── app.js
              ├── sass/
                ├── app.scss
          ├── lang/
          ├── views/
      ├── Routes/
          ├── api.php
          ├── web.php
      ├── Repositories/
      ├── Tests/
      ├── composer.json
      ├── module.json
      ├── package.json
      ├── webpack.mix.js
Вход в полноэкранный режим Выход из полноэкранного режима

Теперь мы успешно сгенерировали наш модуль Posts. Давайте протестируем его, выполнив приведенную ниже команду:

php artisan serve
Войти в полноэкранный режим Выйти из полноэкранного режима

Затем запустите URL в вашем браузере:

http://127.0.0.1:8000/posts
Войти в полноэкранный режим Выйти из полноэкранного режима

После этого вы увидите результат, показанный ниже:

Для получения более подробной информации об этом щелкните модули Laravel.

Я надеюсь, что этот учебник поможет вам. Пожалуйста, посетите здесь https://codeanddeploy.com/blog/laravel/how-to-implement-laravel-modules-structure-with-nwidart-package, если вы хотите скачать этот код.

Счастливого кодирования 🙂

Оцените статью
Procodings.ru
Добавить комментарий