Laravel 5.7 模块化结构应用程序

Laravel 5.7 模块化结构应用程序

在这一节中,我们将创建一个模块化结构的应用程序。我们将使用 Laravel 5.7 来实现这一点。在这里,我们将使用 nWidart/laravel-modules 包来创建模块化结构的设计模式。该包用于设置命令,以便快速简单地创建一个模块。使用该功能,每个模块将创建一个单独的文件夹。

在我们开始使用 Laravel 时,我们已经了解了 Laravel 的结构,如 console、views、helper、controller、model、providers、migration 等等。但当时我们意识到,通过把它变得模块化,我们可以让它更易于理解和使用。如果为 Laravel 的每个 CRUD 指定的项目,如 item、country、product、city、state 等都创建了一个模块,那将更加美妙,因为这样一来,我们可以在应用程序中轻松地重复使用它。模块化结构方法非常好,所以它更有用。

在我们的 Laravel 应用程序中,我们将使用 laravel-modules composer 包来创建模块化结构。在 Laravel 应用程序中,我们可以通过使用其他许多包来创建模块化结构,但是 laravel-modules 包用于创建 “Module” 目录和子目录,这非常简单和易于理解。该文件夹中有许多列出的内容,具体如下所述:

  • 实体
  • 配置
  • 测试
  • 数据库
  • 路由
  • 提供
  • Http
  • 控制台

当我们需要使我们的应用程序模块化时,这一节将非常有用。为此,我们将安装 laravel-modules composer 的服务提供商和包。为了安装 laravel-modules 包,可以使用以下命令:

设置

在设置过程中,我们将 安装 laravel-modules 包 。以下命令将用于此操作:

composer require nwidart/laravel-modules

之后,我们将 发布配置文件 。将使用以下命令来完成此操作:

php artisan vendor:publish --provider="Nwidart\Modules\LaravelModulesServiceProvider"

然后我们将使用 autoload file with Adding:composer.json 文件。

{
  "autoload": {
    "psr-4": {
      "App\\": "app/",
      "Modules\\": "Modules/"
    }
  }
}

之后,我们将按照以下方式执行以下命令:

composer dump-autoload

现在我们可以使用laravel-module包来创建一个模块。现在我们将使用以下语法来创建新的包。

创建模块的语法:

php artisan make:module module_name

创建模块示例:

php artisan make:module Category

当我们成功运行上述代码时,我们将打开我们的app文件夹,并看到新创建的Modules目录和Migration。其结构描述如下:

app/
bootstrap/
vendor/
Modules/
  ├── Category/
      ├── Assets/
      ├── Config/
      ├── Console/
      ├── Database/
          ├── Migrations/
          ├── Seeders/
      ├── Entities/
      ├── Http/
          ├── Controllers/
          ├── Middleware/
          ├── Requests/
      ├── Providers/
          ├── CategoryServiceProvider.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

我们可以在上述应用程序中看到视图、模型、路由、控制器、助手、数据库和存储库。如果我们想要更多的模块,可以轻松地创建它们。为了运行上述代码,我们将运行以下命令:

php artisan serve

现在我们可以使用浏览器打开下面的URL:

http://localhost:8000/category

打开这个之后,我们可以看到以下的输出:

Laravel 5.7 模块化结构应用程序

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程