kunsal/laramodula

此包将在laravel中创建一个模块化项目结构

v1.0.8 2020-01-07 14:18 UTC

This package is auto-updated.

Last update: 2024-09-08 00:39:50 UTC


README

CircleCI Laravel 5.x|6.x Latest Stable Version Latest Unstable Version Total Downloads GitHub issues GitHub forks Latest Stable Version

Laramodula是一个用于管理大型Laravel应用的Laravel包。随着应用复杂性和规模的增加,使用默认的Laravel文件夹结构来管理它会使维护变得更加困难。模块化您的应用可以为您提供更多的维护和扩展空间。这正是这个包通过将相关的控制器、模型、视图等分组到名为模块的同一文件夹中来实现的。

结构

这为Laravel提供了一个模块化项目结构的脚手架。

安装

使用Composer

composer require kunsal/laramodula

手动安装

修改您的composer.json文件以包含

{
    "require": {
        "kunsal/laramodula": "1.0.*"
    }
}

然后运行composer install

此包将在安装时自动由Laravel发现,因此无需将其添加到config/app.php中。

使用方法

要生成一个简单的Blog模块,运行

php artisan make:module Blog

您可以选择传递参数给生成脚本,如下所示

  • 带有默认迁移脚手的模块

    php artisan make:module Blog --migration

  • 带有默认表单的模块:此模块利用了Kris\LaravelFormBuilder

    php artisan make:module Blog --migration --form="title:text, body:textarea"

    有关表单字段值和表单构建器的更多信息,请参阅https://kristijanhusak.github.io/laravel-form-builder/overview/commands.html

  • 使用--resources标志创建带有样板代码的资源控制器

以下是在运行php artisan module:make时Blog模块的结构。

 app/
 |-- ... 
 |-- Modules/
 |---- Blogs/
 |------ Events/ 
 |------ Forms/ 
 |-------- BlogForm.php 
 |------ Http/
 |-------- Controllers/ 
 |---------- BlogController.php 
 |-------- Requests/
 |---------- StoreBlogRequest.php 
 |---------- UpdateBlogRequest.php 
 |-------- Services/
 |---------- CreateBlogService.php 
 |-------- routes.php 
 |------ Listeners/
 |------ Mail/
 |------ Models/
 |-------- Migrations/
 |---------- 2019_12_21_112619_create_blogs_table.php
 |-------- Blog.php 
 |------ Providers/
 |-------- BlogEventServiceProvider.php
 |-------- BlogServiceProvider.php
 |------ Repositories/
 |-------- Eloquent/
 |---------- BlogRepository.php
 |-------- BlogInterface.php
 |------ Resources/
 |-------- Lang/
 |-------- Views/
 |---------- index.blade.php
 |---------- form.blade.php
 |------ Traits/

许可

此包具有MIT许可。有关更多信息,请参阅许可文件