19peaches/laravel-generator

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

使用一个命令即可生成Laravel CRUD生成器/模型/迁移,包括控制器、服务、仓库、模型、迁移、routes.php更新。

1.1.0 2017-02-01 03:56 UTC

This package is auto-updated.

Last update: 2022-01-07 09:40:56 UTC


README

Artisan命令可以生成以下项目

  • 迁移文件
  • 模型
  • 仓库
  • 服务
  • 控制器
  • 视图
    • index.blade.php
    • show.blade.php
    • create.blade.php
    • edit.blade.php
    • form.blade.php
  • 调整routes.php
  • 调整ModelFactory.php

以下是完整文档。

升级指南.

文档正在制作中...

文档

  1. 安装
  2. 配置
  3. 发布 & 初始化
  4. 生成器
  5. 支持的字段类型
  6. 自定义模板
  7. 选项
    1. 分页记录
    2. 身份验证

安装

  1. 将此包添加到您的composer.json

     "require": {
         "doctrine/dbal": "^2.5",
         "laracasts/flash": "dev-master",
         "laravelcollective/html": "^5.2"
     }
    
     "require-dev": {
         "19peaches/laravel-generator": "1.*"
     }
    
  2. 运行composer update

     composer update
    
  3. 将服务提供者添加到config/app.php中的providers数组。
    由于我们使用这两个包 laravelcollective/html & laracasts/flash 作为依赖项。
    因此,我们还需要添加那些服务提供者。

     Collective\Html\HtmlServiceProvider::class,
     Laracasts\Flash\FlashServiceProvider::class,
     Peaches\Generator\GeneratorServiceProvider::class,
    

    为了方便起见,将这些外观添加到config/app.php中的别名数组。

     'Form'      => Collective\Html\FormFacade::class,
     'Html'      => Collective\Html\HtmlFacade::class,
     'Flash'     => Laracasts\Flash\Flash::class
    

配置

发布配置文件generator.php

    php artisan vendor:publish

配置文件(config/generator.php)包含所有生成文件的路径

base_controller - 所有控制器的基类控制器
base_name - 基类的基础目录路径

path_migration - 生成迁移文件的路径
path_model - 生成模型文件的路径
path_repository - 生成仓库文件的路径
path_service - 生成服务文件的路径
path_controller - 生成控制器文件的路径
path_views - 创建视图的路径
path_request - 创建请求文件的路径
path_routes - routes.php的路径(如果您使用任何自定义路由文件)

namespace_model - 模型的命名空间
namespace_repository - 仓库的命名空间
namespace_service - 服务的命名空间
namespace_controller - 控制器的命名空间
namespace_request - 请求的命名空间

model_extend_class - 模型的扩展类

main_layout - 扩展主布局

route_prefix - 脚手架路由的前缀

use_repository_layer - 使用仓库层

use_service_layer - 使用服务层

发布 & 初始化

  1. 发布一些常见的视图,如paginate.blade.php。php artisan generator:publish

  2. 发布模板。php artisan generator:publish --templates

  3. 发布一个基础仓库文件 php artisan generator:publish --baseRepository

生成器

通过执行 artisan 命令从现有表中生成迁移、模型、带有 CRUD 视图的 Scaffold。此包可以从指定表或数据库中所有表中生成文件。

此包要求您至少传递一个表名参数。如果您想传递多个表名,则用逗号分隔表名列表。

从现有表中生成迁移

    php artisan generator:make:migrate TableName

生成 CRUD Scaffold

    php artisan generator:make:scaffold TableName

生成带有验证和关系的模型

    php artisan generator:make:model TableName

从现有表中生成工厂

    php artisan generator:make:factory TableName

生成所有资源文件

    php artisan generator:make:resource TableName

例如:php artisan generator:migrate php artisan generator:migrate posts,comments

php artisan generator:make:model 
php artisan generator:make:model posts,comments
php artisan generator:make:model --tables=posts,comments
php artisan generator:make:model --ignore=posts,comments
php artisan generator:make:model posts,comments --models=Post,Comment

php artisan generator:make:scaffold
php artisan generator:make:scaffold posts,comments
php artisan generator:make:scaffold --tables=posts,comments
php artisan generator:make:scaffold --ignore=posts,comments

php artisan generator:make:factory posts,comments

php artisan generator:make:resource posts,comments

支持的 HTML 字段类型

以下是支持的字段类型及其选项列表

  • 文本
  • 多行文本框
  • 密码
  • 邮箱
  • 复选框
  • 数字
  • 日期

自定义模板

要使用自己的自定义模板,

  1. 将模板发布到 /resources/generator-templates

     php artisan generator:publish --templates
    
  2. 仅保留您想要更改的模板。删除您不打算更改的模板。

选项

分页记录

要分页记录,您可以指定分页选项,例如:

    php artisan generator:make:scaffold posts --paginate=10

模型使用 Auth

要使用 Auth 特性,使用 auth 选项,

    php artisan generator:make:model users --auth

致谢

原始 Laravel 生成器由 Bluecode 创建。

欢迎提交错误 :)