knacdev/laravel-plugins

Laravel-Plugins 是一个帮助您根据以下结构组织模块的包:{vendor}-{PackageName}。我个人正在用它来划分其他应用程序(如 Dashboard/Admin 或 Dashboard/User)中的逻辑部分。

dev-main 2024-08-06 08:44 UTC

This package is auto-updated.

Last update: 2024-09-06 17:11:23 UTC


README

Latest Version on Packagist Total Downloads

简介

本包受 OctoberCMS 启发,旨在创建类似结构的插件,以帮助您将应用程序架构划分为更可扩展和可重用的组件。目标是能够确定您正在使用模型、控制器等的目的。在 laravel-plugins 中,您可以自定义所有文件存储的位置,以及是否使用 {vendor} 命名空间或默认命名空间。

由于模块/插件包缺乏管理,因此创建了此包。在我们公司,我们经常希望将逻辑部分划分为更大的逻辑组。例如,在我们的一个平台上,我们有多个用户视角,这导致代码混乱,因此我们需要使用其他包将客户端、用户和组数据分开,对于插件/模块,您可以有多个文件架构,其中一个可以是

一些开发人员想要使用他们自己的包或他们的工作,因为结构通用,命名空间总是混乱的,并且需要大量工作才能将他们的工作转移到我们的代码库中。使用 laravel-plugins,您只需创建一个具有自己命名空间的文件夹,所有模块都可以正常工作(如果建立在插件之上)KnausDev/warehouse

安装

您可以通过 composer 安装此包

composer require knausdev/laravel-plugins

自动加载

将其添加到您的 composer.json

请注意,在您的配置文件中更改 directory,并在此处也进行更改

    "extra": {
        "laravel": {
            "dont-discover": []
        },
        "merge-plugin": {
            "include": [
                "Plugins/*/composer.json",
                "Plugins/*/*/composer.json"
            ]
        }
    }

用法

用法

在这个包中,您可以找到类似 {vendor}/{packageName} 的结构。

php artisan plugins:make {?vendor}.{packageName}

用法:php artisan plugins:make KnausDev.Warehouse

结果

/ <-- Your laravel root
	/plugins <-- Directory configurable in laravel-plugins config file
		/KnausDev <-- Vendor
			/Warehouse <-- Package name
				WarehouseServiceProvider.php

TODO:README 的其余部分

变更日志

请参阅 CHANGELOG 以获取更多关于最近更改的信息。

贡献

请参阅 CONTRIBUTING 以获取详细信息。

安全

如果您发现任何与安全相关的问题,请通过电子邮件 peter@knaus-development.com 而不是使用问题跟踪器。

鸣谢

许可

MIT 许可证(MIT)。请参阅 许可文件 以获取更多信息。