lexxsoft / upbasis
通用平台基础
Requires
- php: >=8.1
- ext-curl: *
- ext-zip: *
- symfony/yaml: ^6.2
Requires (Dev)
- laravel/framework: ^10.5
- nwidart/laravel-modules: ^10.0
This package is auto-updated.
Last update: 2024-09-06 18:49:51 UTC
README
此包提供启动功能,用于管理通用平台
安装
通过 composer 命令安装包
composer require lexxsoft/upbasis
初始化
为了将 Laravel 项目准备好用于使用和开发通用平台,您可以运行以下命令
php artisan up:init
此命令将安装所需的 composer 包,更新 composer PSR4 部分,更新 Laravel 配置,创建资源文件。
此命令将完全覆盖
- /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"
现在您的项目已拥有开发 VueJS 和 typescript 接口所需的所有包和资源。
要求
此包使用 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 激活器设置为默认模块激活器。这为使用通用平台提供了单个正确的模块激活器。
提供的模块激活器使用 Laravel 缓存系统
提供的 artisan 命令
根据模型生成模板
php artisan up:generate {module} {model} {--vers=V1}
这将生成以下文件
- CreateRequest
- UpdateRequest
- DefaultRulesRequest
- Resource
- Controller
- Factory
- Seeder 此生成器使用模型
$fillable属性。
通过某些字段填充模型
$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}
此命令将下载并注册通用平台的模块。
它将从 外部 存储下载文件。
选项
提取模块
php artisan up:extract {module}
这将收集所有模块文件、权限和翻译到一个单独的 .zip 文件中。
选项