lexxsoft/upbasis

通用平台基础

dev-master 2023-04-06 15:49 UTC

This package is auto-updated.

Last update: 2024-09-06 18:49:51 UTC


README

Package validation status

此包提供启动功能,用于管理通用平台

安装

通过 composer 命令安装包

composer require lexxsoft/upbasis

初始化

为了将 Laravel 项目准备好用于使用和开发通用平台,您可以运行以下命令

php artisan up:init

此命令将安装所需的 composer 包,更新 composer PSR4 部分,更新 Laravel 配置,创建资源文件。

IMPORTANT

此命令将完全覆盖

  • /app/Http/Kernel.php
  • app/Providers/AuthServiceProvider.php
  • routes/web.php
  • config/cors.php
  • vite.config.js
  • /resource

您的项目。

接下来将安装以下包

  • laravel/sanctum
  • nwidart/laravel-modules
  • spatie/laravel-permission

对于所有包,将调用命令 php artisan vendor:publish

运行数据库迁移以创建必要的表

php artisan migrate

最后,发布配置文件

php artisan vendor:publish --provider="Lexxsoft\Upbasis\UpBasisServiceProvider" --tag="config"

现在您的项目已拥有开发 VueJStypescript 接口所需的所有包和资源。

要求

此包使用 nwidart/laravel-modules 包作为主要功能,以按模块分离平台。您应该通过命令安装

composer require nwidart/laravel-modules

强制创建和覆盖

临时文件存储

当前包将添加到 filesystems.disks 配置中的 tmp 磁盘,如果不存在的话。 tmp 磁盘的配置如下

'driver' => 'local',
'root' => storage_path('tmp'),
'throw' => false,

此磁盘用于存储临时创建的文件,不包含任何重要数据。

模块激活器

默认情况下,nwidart/laravel-modules 模块激活器是 file。通用平台基础包 强制 创建标识符为 up_database 的激活器,具有以下凭据

'class' => \Lexxsoft\Upbasis\Support\DatabaseModuleActivator::class,
'cache-key' => 'activator.installed',
'cache-lifetime' => 5184000,

接下来,当前包将 up_database 激活器设置为默认模块激活器。这为使用通用平台提供了单个正确的模块激活器。

IMPORTANT

提供的模块激活器使用 Laravel 缓存系统

提供的 artisan 命令

根据模型生成模板

php artisan up:generate {module} {model} {--vers=V1}

这将生成以下文件

  • CreateRequest
  • UpdateRequest
  • DefaultRulesRequest
  • Resource
  • Controller
  • Factory
  • Seeder 此生成器使用模型 $fillable 属性。

IMPORTANT

通过某些字段填充模型 $fillable 属性。否则,生成结果将不可接受。

选项

(*) API 版本会影响包名称的

  • CreateRequest
  • UpdateRequest
  • DefaultRulesRequest
  • Resource

从外部存储库安装模块

php artisan up:require {module} {--M|no-migration} {--T|no-translation} {--P|no-permission} {--A|no-activate} {--S|skip-server-installation} {--C|skip-client-installation} {--b|backup-exist} {--f|force}

此命令将下载并注册通用平台的模块。

IMPORTANT

它将从 外部 存储下载文件。

选项

提取模块

php artisan up:extract {module}

这将收集所有模块文件、权限和翻译到一个单独的 .zip 文件中。

选项