wovosoft / crud
WovoCMS 的 Laravel 包生成器
Requires
- php: >=7.2
- illuminate/console: ^7.0
- illuminate/container: ^7.0
- illuminate/filesystem: ^7.0
- illuminate/support: ^7.0
- illuminate/view: ^7.0
This package is auto-updated.
Last update: 2024-09-29 05:36:00 UTC
README
这是一个简单的包,可以快速生成 Laravel 包的基本结构。
安装
通过 composer 安装
composer require --dev wovosoft/crud
如果您想自定义默认值,请发布包配置
php artisan vendor:publish --provider="Wovosoft\Crud\ServiceProvider" --tag="config"
包可用命令
创建新包
php artisan crud:make_package {vendor} {package}
或者,使用交互模式
php artisan crud:make_package -i
示例: php artisan crud:make_package Wovosoft SomeAwesomePackage
此命令将
- 创建
packages/wovosoft/some-awesome-package
文件夹 - 在 app composer.json 中注册包
- 从骨架文件夹复制包骨架到创建的文件夹(您可以在配置中提供自定义骨架路径)
运行git init packages/wovosoft/some-awesome-package
- 运行
composer update wovosoft/some-awesome-package
- 运行
composer dump-autoload
- 使用交互模式
-i
标志,您将被提示输入所有需要的值。
删除包
php artisan crud:remove_package {vendor} {package}
示例:
php artisan crud:remove_package Wovosoft SomeAwesomePackage
运行 composer remove wovosoft/some-awesome-package
此命令将
- 删除
packages/wovosoft/some-awesome-package
文件夹 - 在 app composer.json 中注销包
- 交互模式也是可能的。
- 使用交互模式
-i
标志,您将被提示输入所有需要的值。
控制器生成可用命令
创建控制器
php artisan crud:make_controller {vendor} {package} {controller} {model}
使用交互模式
\
php artisan crud:make_controller -i
删除控制器
php artisan crud:remove_controller {vendor} {package} {controller}
php artisan crud:remove_controller -i
php artisan crud:make_controller -i
模型生成可用命令
创建模型
php artisan crud:make_model {vendor} {package} {model}
php artisan crud:make_model -i
php artisan crud:make_controller -i
删除模型
php artisan crud:remove_model {vendor} {package} {model}
php artisan crud:remove_model -i
使用交互模式
php artisan crud:remove_model -i
CRUD 控制台应用程序
有一个可用的控制台应用程序。要使用较少的命令在单个终端中运行所有上述 Artisan 命令,请运行
php artisan crud -i
或php artisan crud
。然后您将看到所有可用的命令以多选形式呈现。只需选择一个选项,该命令将立即以交互模式执行。然后您可以继续进行其他流程。
自定义骨架
此包将从指定的骨架路径复制所有文件夹和文件到包文件夹。您可以使用骨架中的模板。所有具有
tpl
扩展名的文件将提供一些可在此中使用变量。扩展名tpl
将被删除。
在模板中可用的变量
- vendor (例如:Wovosoft)
- package (例如:SomeAwesomePackage)
- vendorFolderName (例如:wovosoft)
- packageFolderName (例如:some-awesome-package)
- packageHumanName (例如:Some awesome package)
- composerName (例如:wovosoft/some-awesome-package)
- composerDesc (例如:A some awesome package)
- composerKeywords (例如:some,awesome,package)
- licence (例如:MIT)
- phpVersion (例如:>=7.0)
- aliasName (例如:some-awesome-package)
- configFileName (例如:some-awesome-package)
- year (例如:2017)
- name (例如:Narayan Adhikary)
- email (例如:narayanadhikary24@gmail.com)
- githubPackageUrl (例如:https://github.com/wovosoft/some-awesome-package)
- controller (控制器生成的控制器名称)
- model (模型生成的模型名称)
需要手动执行的事情
- 服务提供者和别名注册(如果您使用 laravel <5.5)
- 在 README.md 中
- StyleCI仓库标识符
- 包描述
- 使用说明部分
安全
如果您发现任何安全相关的问题,请发送电子邮件至narayanadhikary24@gmail.com。或者,您可以在本GitHub仓库中创建一个问题。
致谢
特别感谢
- 特别感谢https://github.com/melihovv/laravel-package-generator。我们对这个包进行了扩展。集成了一个控制台应用程序,以执行所有操作。还添加了一些额外的命令,例如控制器、模型,并增加了为某些包添加和删除功能。