jaapmoolenaar.nl/crud-generator

该软件包最新版本(5.6)没有提供许可证信息。

Laravel 5 CRUD 生成器

5.6 2018-04-03 09:39 UTC

This package is not auto-updated.

Last update: 2024-09-15 23:27:04 UTC


README

Laravel CRUD 生成器

要求

Laravel >=5.1
PHP >= 5.5.9

安装

  1. 运行

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

    'providers' => [
        ...
    
        Appzcoder\CrudGenerator\CrudGeneratorServiceProvider::class,
    ],
  3. laravelcollective/html 的服务提供者和别名添加到 /config/app.php 文件。

    'providers' => [
        ...
    
        Collective\Html\HtmlServiceProvider::class,
    ],
    
    'aliases' => [
        ...
    
        'Form'      => Collective\Html\FormFacade::class,
        'HTML'      => Collective\Html\HtmlFacade::class,
    ],
  4. laracasts/flash 的服务提供者和别名添加到 /config/app.php 文件。

    'providers' => [
        ...
    
        Laracasts\Flash\FlashServiceProvider::class,
    ],
    
    'aliases' => [
        ...
    
        'Flash'     => Laracasts\Flash\Flash::class,
    ],
  5. 如果 composer 没有安装更新,请运行 composer update

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

    php artisan vendor:publish
    

    这会将存根复制到 resources/crud-generator/,如果您想使用它们,请记住在配置中启用它们(crudgenerator.php 中的 'custom_template')

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

命令

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');

支持的字段类型

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

  • 字符串
  • 字符
  • 可变字符
  • 密码
  • 电子邮件
  • 日期
  • 日期时间
  • 时间
  • 时间戳
  • 文本
  • 中文本
  • 长文本
  • JSON
  • JSONB
  • 二进制
  • 数字
  • 整数
  • 大整数
  • 中整数
  • 小整数
  • 短整数
  • 布尔型
  • 十进制
  • 双精度浮点数
  • 浮点数

自定义生成器的存根模板

您可以根据需要自定义生成器的存根文件/模板。

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

    php artisan vendor:publish
    
  2. /config/crudgenerator.php 上开启 custom_template 支持

    'custom_template' => true,
    
  3. /resources/crud-generator/ 目录中,您可以修改或自定义存根文件。

其他配置选项

您可以使用此配置选项使用另一个布局来扩展 'layouts.master'(如果它不是默认的 'layouts.master',则不会复制布局存根)

'extend_layout' => 'layouts.app',

如果您在布局中使用其他部分名称,请使用以下方式设置它

'section_name' => 'sub_content',

使用以下方式设置用于资源控制器的中间件: (Laravel 5.2 的 'web' 中间件将自动添加)

'middleware' => 'auth',

##作者

Sohel Amin

Jaap Moolenaar