webkul / code-generator
模块可以在几秒钟内生成模型、控制器和助手,以便您能更专注于应用程序逻辑
README
安装
composer require webkul/code-generator
php -f bin/magento setup:upgrade
用户指南
用法
- 创建新模块
php bin/magento generate:code Module_Name --type=new-module
- 创建模型
php bin/magento generate:code Module_Name --table="table_name" --type=model --name=ModelName
如果您在上面的命令中创建了表的 db_schema 文件,它将自动创建模式中所有列的设置器和获取器。
- 创建仓库
php bin/magento generate:code Module_Name --type=repository --name=RepositoryClassName --model-class=ModelClassFullName --collection-class=CollectionClassFullName
- 创建控制器
php bin/magento generate:code Module_Name --type=controller --name=ControllerName --area=frontend|adminhtml --path=RelativeToModuleControolerFolder --router=RouteName
- 创建助手
php bin/magento generate:code Module_Name --type=helper --name=HelperName
- 创建支付方式
php bin/magento generate:code Module_Name --type=payment --name=MethodName --payment-code=PaymentMethodCode
- 创建物流方式
php bin/magento generate:code Module_Name --type=shipping --shipping-code=custom_shipping
- 创建插件
php bin/magento generate:code Module_Name --type=plugin --name=PluginName --plugin=FullClassName [--area=frontend|adminhtml]
- 创建观察者
php bin/magento generate:code Module_Name --type=observer --name=ObserverName --event=event_name [--area=frontend|adminhtml]
- 创建定时任务
php bin/magento generate:code Module_Name --type=cron --name=CronName [--schedule="0 1 * * *"]
- 创建单元测试用例
php bin/magento generate:code Module_Name --type=unit-test
- 创建视图
php bin/magento generate:code Module_Name --type=create-view --name=webkul_index_index --area=adminhtml --block-class=Main --template=hello.phtml --layout-type=admin-2column-left
--block-class
, --template
, --layout-type
是可选的。
- 创建日志记录器
php bin/magento generate:code Module_Name --type=logger [--name=loggerfile]
- 创建命令
php bin/magento generate:code Module_Name --type=command --name=CommandClass --command='test:hello'
- 覆盖/重写类(块、模型、控制器)
php bin/magento generate:code Module_Name --type=rewrite --name=ClassName --rewrite='OverriddenClass' [--path=RelativeToModuleFolder]
- 创建电子邮件模板
php bin/magento generate:code Module_Name --type=email --name="Email Label" [--id="module_email_test"] [--template="test"]
- 创建 UI 网格列表
php bin/magento generate:code Module_Name --type=ui_component_listing --name="test_test" [--columns_name="test_column"] [--model_class_name="Model Class Name"][--table="Table Name"]
- 创建 UI 组件表单
php bin/magento generate:code Module_Name --type=ui_component_form --name="test_test_form" [--provider_name="Data Provider Name"] [--model_class_name="Model Class Name"] [--fieldset_name="Field Set Name"] [--fieldset_label="Field Set Label"] [--submit_url="Form Submit Url"] [--form_field="Form Fields in Json Format"]
示例:form_field = '[{"field_name": "test_input_field", "field_type": "input", "field_label": "Test Input Field", "is_required": "true"}, {"field_name": "test_image_field", "field_type": "imageUploader", "field_label": "Image Uploader", "is_required": "false", "image_upload_url": "test/test/upload"}]'