shibuyakosuke / laravel-crud-command
为laravel生成CRUD文件。
1.0.0
2020-10-29 11:45 UTC
Requires
- php: ^7.2.5 | ^7.3 | ^7.4
- barryvdh/laravel-dompdf: ^0.8.6
- diplodocker/comments-loader: ^0.0.2
- laravel/framework: ^6.0 | ^7.0 | ^8.0
- laravelcollective/html: ^6.1 | ^6.2
- maatwebsite/excel: ^3.1
- shibuyakosuke/laravel-crud-breadcrumbs: ^1.0.0
- shibuyakosuke/laravel-database-validation: ^1.2.0
- shibuyakosuke/laravel-form-extend: ^1.0
- shibuyakosuke/laravel-model-replacement: ^1.1.1
- watson/rememberable: ^3.0 | ^4.0 | ^5.0
Requires (Dev)
- mockery/mockery: ^1.3 | ^1.4
- orchestra/testbench: ^5.0 | ^6.0
- phpunit/phpunit: ^8.0 | ^9.0
- squizlabs/php_codesniffer: ^3.5
This package is auto-updated.
Last update: 2024-09-12 14:28:01 UTC
README
从预创建的数据库获取模式,并使用Artisan命令批量输出CRUD所需的文件。
特性
- 从MySQL表注释和列注释生成翻译文件。
- resourcees/lang/{locale}/tables.php
- resourcees/lang/{locale}/columns.php
- 从MySQL表定义创建验证规则。
- rules/{model}.php
- 模型创建
- 属性会自动从表列生成。
- 输出外键约束中的belongsTo, hasMany, belongsToMany方法。
- 控制器创建
- 输出CRUD所需的所有方法。
- 全局作用域创建
- 为每个模型创建一个全局作用域类。
- 表单请求类创建
- 规则会自动从表定义中输出。
- 视图组合器创建
- 自动生成逻辑,从外键定义将表单部分传递到视图。
- 视图创建
- 自动生成列表、详情、新建和更新。
- 面包屑列表创建
- 自动将面包屑路径输出到CRUD生成的文件中。
- 模板定制
- 根据项目,您可能需要定制输出模板。在这种情况下,您可以像您喜欢的那样编辑存根。
安装
composer require shibuyakosuke/laravel-crud-command
设置
1. 首先,创建一个迁移文件。务必设置注释和外键,如示例所示。
- 务必为生成模型的表添加表注释。
- 不要注释多对多中间表。
对于表注释功能,使用了diplodocker/comments-loader。
use Illuminate\Database\Schema\Blueprint; Schema::create('users', function (Blueprint $table) { $table->id()->comment('ID'); $table->unsignedBigInteger('role_id')->nullable()->comment('ロールID'); $table->unsignedBigInteger('company_id')->nullable()->comment('会社ID'); $table->string('name')->comment('氏名'); $table->string('email')->unique()->comment('メールアドレス'); $table->timestamp('email_verified_at')->nullable()->comment('メール認証日時'); $table->string('password')->comment('パスワード'); $table->rememberToken()->comment('リメンバートークン'); $table->timestamp('created_at')->nullable()->comment('作成日時'); $table->timestamp('updated_at')->nullable()->comment('更新日時'); $table->softDeletes()->comment('削除日時'); $table->tableComment('ユーザー'); // Table comment helps you to make language files. // Foreign key helps you to make belongsTo methods, hasMany methods and views . $table->foreign('role_id')->references('id')->on('roles'); $table->foreign('company_id')->references('id')->on('companies'); });
2. 执行迁移
php artisan migrate
3. 编辑config/app.php以设置语言
'locale' => 'ja',
4. 输出资源
php artisan crud:setup
5. 输出所有CRUD文件
php artisan make:crud users
选项
--force
即使文件存在,也会覆盖并输出。--api
只输出REST控制器,而不是正常控制器。--with-api
输出正常控制器和REST控制器。不能与--api
同时指定。--sortable
输出表格排序功能。--with-export
输出表格导出功能。--with-filter
同时输出表格过滤功能。--with-trashed
输出表格导出功能。
其他命令
要自定义输出文件,请执行以下命令以输出位于/stubs目录中的多个具有.stub扩展名的产品文件。自定义输出文件。
php artisan stub:publish