bmadeiro/laravel-project

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

1.1.0 2017-02-01 03:56 UTC

This package is auto-updated.

Last update: 2024-09-07 16:32:45 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. 将ServiceProviders添加到config/app.php中的providers数组。
    因为我们使用这两个包作为依赖 laravelcollective/html & laracasts/flash
    因此,我们还需要添加这些ServiceProviders。

     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视图的脚手架。此包可以从指定表或从数据库中的所有表中生成文件。

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

从现有表生成迁移

    php artisan generator:make:migrate TableName

生成CRUD脚手架

    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 创建。

欢迎提交bug :)