p-marco/laravel_utils.entitiesmanager

为Laravel设计的具有观点的包,用于按职责组织实体。

1.0.0 2023-11-27 18:54 UTC

This package is auto-updated.

Last update: 2024-09-12 19:21:09 UTC


README

简单的具有观点的Laravel实体管理工具。

它做什么

laravel_utils-EntitiesManager 是一个Laravel包,简化了您的Web应用程序中核心数据实体的管理。它提供了一个具有观点和结构化的方法来高效地处理实体,这些实体是基本的数据对象,如用户、产品或帖子等。

主要特性

  • 简化实体管理:此包简化了您Laravel应用程序中实体的创建、组织和管理工作。它简化了设置每个实体相关基本组件的过程。

  • 清晰的文件夹结构:当生成实体时,laravel_utils-EntitiesManager 会创建清晰且一致的文件夹结构。例如,如果您正在处理“帖子”实体,它会为控制器、模型、提供者、存储库和特定于该实体的视图生成文件夹。

Post
    Controllers
        PostController.php
    Models
        PostModel.php
    Providers
        PostProvider.php
    Repositories
        PostRepository.php
    Views
        PostView.blade.php
  • 这种结构化方法有助于维护良好的代码库。

  • 轻松生成实体:您可以使用简单的Artisan命令轻松地为实体生成不同组件。例如,您可以使用单个命令生成实体的模型、控制器或存储库,从而节省您的时间和精力。

    // Example: Generate a model for the "Post" entity
    artisan entity:generate Post --layer=model
  • 实体间的一致性:通过遵循一致的命名和组织约定,此包有助于确保应用程序中的所有实体都拥有统一的结构。这种一致性使得理解和管理代码库更加容易。

  • 提高代码可维护性:拥有良好的代码库,开发者可以更有效地协作并随着时间的推移维护应用程序。此包促进了代码组织的最佳实践。

总之,laravel_utils-EntitiesManager 通过提供结构化的方法和生成、组织实体相关组件的工具,简化了Laravel中的实体管理。它提高了代码的可维护性,鼓励最佳实践,并在处理Laravel应用程序中的实体时为开发者节省宝贵的时间。

安装

composer.json 中添加此包

    "repositories": [
        {
            "type": "vcs",
            "url": "https://github.com/p-marco/laravel_utils/EntitiesManager"
        }
    ],
    "require": {
        "p-marco/laravel_utils.entitiesManager": "dev-main"
    }

用法

// Basic usage:
artisan entity:generate {entity} {--layer}

// Create a model or other types (either if the Entity is already present or not):
artisan entity:generate Author --layer=model
artisan entity:generate Comment --layer=view
artisan entity:generate Post --layer=controller

根目录硬编码为 App\Entities。未来计划使其可配置。

变更日志

v.1.1.0

  • 将实体生成根目录编码到配置文件中,可以发布(!破坏性功能)
  • 当未指定 --layer 选项时,创建默认回退