abidmi/crud-generator

Laravel 5 CRUD 生成器

dev-master 2016-01-05 01:51 UTC

This package is not auto-updated.

Last update: 2024-09-14 18:58:22 UTC


README

Laravel CRUD 生成器

需求

Laravel >=5.1
PHP >= 5.5.9

安装

  1. 运行

    composer require abidmi/crud-generator
    
  2. 将服务提供者添加到 /config/app.php 文件。

    'providers' => [
        ...
    
        Abidmi\CrudGenerator\CrudGeneratorServiceProvider::class,
    ],
  3. 安装 laravelcollective/html 包以使用表单和HTML。

    • 运行
    composer require laravelcollective/html
    // For laravel 5.1
    composer require laravelcollective/html:5.1.*
    
    • 将服务提供者和别名添加到 /config/app.php 文件。
    'providers' => [
        ...
    
        Collective\Html\HtmlServiceProvider::class,
    ],
    
    // Use the lines below for "laravelcollective/html" package otherwise remove it.
    'aliases' => [
        ...
    
        'Form'      => Collective\Html\FormFacade::class,
        'HTML'      => Collective\Html\HtmlFacade::class,
    ],
  4. 运行 composer update

  5. 发布配置文件和生成器模板文件。

    php artisan vendor:publish
    

注意:您应该已为此操作配置了数据库。

命令

CRUD 命令

php artisan crud:generate Posts --fields="title:string, body:text"

您还可以通过选项 --route--pk--view-path 等轻松包含路由、设置主键、设置视图目录等,如下所示

php artisan crud:generate Posts --fields="title:string:required, body:text:required" --route=yes --pk=id --view-path="admin" --namespace=Admin --route-group=admin

选项

  • --fields : 表单和模型字段名称。
  • --route : 是否包含 Crud 路由到 routes.php?是或否。
  • --pk : 主键名称。
  • --view-path : 视图路径名称。
  • --namespace : 控制器的命名空间。
  • --route-group : 路由组的名称。

其他命令(可选)

控制器生成器

php artisan crud:controller PostsController --crud-name=posts --model-name=Post --view-path="directory" --route-group=admin

模型生成器

php artisan crud:model Post --fillable="['title', 'body']"

迁移生成器

php artisan crud:migration posts --schema="title:string, body:text"

视图生成器

php artisan crud:view posts --fields="title:string, body:text" --view-path="directory" --route-group=admin

默认情况下,生成器会尝试将 crud 路由附加到您的 routes.php 文件。如果您不希望添加路由,可以使用选项 --route=no

创建所有资源后,运行迁移命令。如果需要,也可以包含您的 crud 路由。

php artisan migrate

如果您选择不自动添加 crud 路由(见上文),则需要手动包含路由。

Route::resource('posts', 'PostsController');

支持的字段类型

以下字段支持迁移和视图表单

  • string
  • char
  • varchar
  • password
  • email
  • date
  • datetime
  • time
  • timestamp
  • text
  • mediumtext
  • longtext
  • json
  • jsonb
  • binary
  • number
  • integer
  • bigint
  • mediumint
  • tinyint
  • smallint
  • boolean
  • decimal
  • double
  • float

自定义生成器占位符模板

您可以通过自定义生成器的占位符文件/模板来满足您的需求。

  1. 确保您已发布包的资产。

    php artisan vendor:publish
    
  2. /config/crudgenerator.php 中开启自定义_template 支持

    'custom_template' => true,
    
  3. 从目录 /resources/crud-generator/ 您可以修改或自定义占位符文件。

##编辑 Abid Muhamad Ismi

##感谢 Sohel Amin