akoepcke/laravel-spawn

此包已被弃用且不再维护。未建议替代包。

Laravel 包,用于生成 CRUD 和视图文件

0.2 2018-11-13 14:52 UTC

This package is auto-updated.

Last update: 2020-08-29 05:07:32 UTC


README

此包提供了一些 Laravel 命令,通过生成一些常用的文件来加速 Laravel 的开发。它是我的 Laravel-Skeleton 的补充。

特性

  • 创建带 Uuid 的软删除模型
  • 创建 ModelController 和 TrashedModelController
  • 为 ModelController 和 TrashedModelController 创建默认特性测试
  • 创建并注册 ModelPolicy
  • 注册角色和权限
  • 创建 model/[create,edit,index].blade.php
  • 创建 trashedModel/index.blade.php
  • 创建并注册数据库迁移、工厂和种子文件
  • Routes/web.php 中注册路由和路由模型绑定

以下特性计划在未来实现TM

  • 在 RouteServiceProvider 中注册路由模型绑定
  • 使 uuid 可标记

安装

您可以通过 composer 安装此包

composer require "akoepcke/laravel-spawn"

使用

运行以下命令以将配置文件发布到 config/spawn.php

php artisan vendor:publish --provider="AKoepcke\LaravelSpawn\ServiceProvider" --tag="stubs""

运行以下命令以将文件存根发布到 resources/stubs

php artisan vendor:publish --provider="AKoepcke\LaravelSpawn\ServiceProvider" --tag="config""

此包提供了以下命令

  • php artisan spawn:monster {model} 将运行所有 spawn 命令
  • php artisan spawn:model {model} 将创建 {Model}.php
  • php artisan spawn:controller {model} 将创建 {Model}Controller.phpTrashed{Model}Controller.php
  • php artisan spawn:test {model} 将为控制器创建几个特性测试
  • php artisan spawn:policy {model} 将创建 {Model}Policy.php
  • php artisan spawn:role {model} 将创建一个具有基本 CRUD 权限的管理员角色
  • php artisan spawn:view {model} 将创建 {Model}Policy.php 并将其注册到 AuthServiceProvider 中
  • php artisan spawn:database {model} 将创建迁移、工厂和种子文件,并在 DatabaseSeeder 中注册种子
  • php artisan spawn:route {model} 将创建 CRUD 路由和路由模型绑定

注意:大多数命令将覆盖现有文件。一些命令,如 spawn:route,将附加到现有文件。还有一些命令,例如种子注册,将插入到现有文件中。

注意事项

  • 此包补充了我的 Laravel-Skeleton,它已经安装了一些内容。一些 spawn 命令在没有适当设置的情况下会失败。
  • 此包将在您的 routes/web.php 中注册一些路由。您可能希望通过将它们包装在 auth-protected 组中来保护这些路由。我还使用此组分配路由 admin 前缀。
      Route::group(['prefix' => 'admin', 'middleware' => 'auth']), function() {
        // copy here
      }
  • 如果生成的路由没有经过 auth 中间件检查,某些 PHPUnit 测试可能会失败。
  • 此外,我还喜欢将路由模型绑定剪切/粘贴到路由文件的最顶部。其他人则更倾向于将其放入app/Providers/RouteServiceProvider.php

变更日志

请查看变更日志以获取有关最近更改的更多信息。

鸣谢

许可

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