nicoaudy / laravelmanthra
懒人开发者用的 Laravel Manthra
Requires
- php: ^7.0
- laravel/helpers: ^1.1
Requires (Dev)
- mockery/mockery: ^1.1
- orchestra/testbench: ~3.0
- phpunit/phpunit: ~7.0
- sempro/phpunit-pretty-print: ^1.0
- dev-master
- 2.2
- 2.1
- 2.0
- 1.2
- 1.1
- 1.0
- dev-dependabot/composer/symfony/http-kernel-4.4.50
- dev-remove-buy-me-coffee
- dev-enhance/readme-2
- dev-enhance/readme
- dev-add-screenshot-manthra-panel
- dev-select2
- dev-table-colspan
- dev-flash-message
- dev-draggable-fields
- dev-nullable-ability
- dev-separated-api-and-web
- dev-generator-panel
This package is auto-updated.
Last update: 2024-09-30 01:34:34 UTC
README
安装
通过 Composer
$ composer require nicoaudy/laravelmanthra dev-master
如果还没有安装,请安装 laravelcollective/html 辅助包。
$ composer require laravelcollective/html
$ composer dump-autoload
发布此包的供应商文件。
$ php artisan vendor:publish
生成器 GUI
如果您想使用 GUI 生成,Manthra 将为您提供在 /manthra
中查看的生成器 GUI。
您可以修改 /manthra
来添加中间件,并将默认路由强制转换为自定义路由。
// manthra controller $manthraNamespace = 'NicoAudy\LaravelManthra\Http\Controllers\ManthraController@index'; // your custom route Route::get('/manthra', $manthraNamespace)->middleware('auth');
命令
完整(Web 和 API)
生成 CRUD 脚手架 Web 和 API,您可以使用此命令,例如
php artisan manthra:complete Cat --fields="name#string;age#integer; type#select#options=persian,maine coon,bengal; is_male#boolean" --view-path=pet --controller-namespace=Pet --route-group=pet --model-namespace=Models
Web
仅生成 CRUD 脚手架 Web,您可以使用此命令,例如
php artisan manthra:web Cat --fields="name#string;age#integer; type#select#options=persian,maine coon,bengal; is_male#boolean" --view-path=pet --controller-namespace=Pet --route-group=pet --model-namespace=Models
API
仅生成 CRUD 脚手架 API,您可以使用此命令,Web 和 API 之间的区别在于 (--view-path=)
标志,例如
php artisan manthra:api Cat --fields="name#string;age#integer; type#select#options=persian,maine coon,bengal; is_male#boolean" --controller-namespace=Pet --route-group=pet --model-namespace=Models
选项
其他命令(可选)
对于控制器
- 标准版本
php artisan manthra:controller PostsController --crud-name=posts --model-name=Post --view-path="directory" --route-group=admin
- API 版本
php artisan manthra:api-controller PostsController --crud-name=posts --model-name=Post --route-group=admin
控制器的选项
对于模型
php artisan manthra:model Post --fillable="['title', 'body']"
对于迁移
php artisan manthra:migration posts --schema="title#string; body#text"
对于视图
php artisan manthra:view posts --fields="title#string; body#text" --view-path="directory" --route-group=admin
默认情况下,生成器会尝试将 CRUD 路由添加到您的 Route
文件中。如果您不想添加路由,可以使用此选项 --route=no
。
创建所有资源后,运行迁移命令。如果需要,也可以包含您的 CRUD 路由。
php artisan migrate
如果您选择不自动添加 CRUD 路由(参见上方),则需要手动包含路由。
Route::resource('posts', 'PostsController');
支持的字段类型
这些字段支持用于迁移和视图表单
表单字段类型
- 文本
- 多行文本
- 密码
- 电子邮件
- 数字
- 日期
- 日期时间
- 时间
- 单选按钮
- 下拉列表
- 文件
迁移字段类型
- 字符串
- 字符
- 可变长度字符串
- 日期
- 日期时间
- 时间
- 时间戳
- 文本
- 中等文本
- 长文本
- JSON
- JSONB
- 二进制
- 整数
- 大整数
- 中等整数
- 小整数
- 小整数
- 布尔型
- 十进制
- 双精度浮点数
- 浮点数
- 枚举
自定义生成器占位符模板
您可以自定义生成器的占位符文件/模板以实现您的需求。
-
确保您已发布包的资产。
php artisan vendor:publish --provider="NicoAudy\LaravelManthra\LaravelManthraServiceProvider"
-
在 config/laravelmanthra.php 上打开 custom_template 支持
'custom_template' => true,
-
从 resources/manthra/stubs/ 目录中,您可以修改或自定义占位符文件。
-
在 config/laravelmanthra.php 上,您可以添加新的占位符并选择传递哪些值
变更日志
请参阅 changelog 以获取有关最近更改的更多信息。
贡献
请参阅 contributing.md 以获取详细信息和学习清单。
致谢
许可证
许可证。有关更多信息,请参阅 许可证文件。